Java 没有IO流,NIO通道就不存在?
在H.Shildt的书中,我读到: 没有上下文,通道就不存在。它们的上下文是java.io中的一系列I/O流类 在学习NIO时,我也看到过这种说法,但很少见到 无论如何,下面的代码在不创建I/O流的情况下工作。为什么?哪种变体是正确的-有或没有IO流Java 没有IO流,NIO通道就不存在?,java,nio,Java,Nio,在H.Shildt的书中,我读到: 没有上下文,通道就不存在。它们的上下文是java.io中的一系列I/O流类 在学习NIO时,我也看到过这种说法,但很少见到 无论如何,下面的代码在不创建I/O流的情况下工作。为什么?哪种变体是正确的-有或没有IO流 try (FileChannel channel = (FileChannel) Files.newByteChannel(Paths.get("test.txt")) ) { // some cod
try (FileChannel channel = (FileChannel)
Files.newByteChannel(Paths.get("test.txt")) ) {
// some code
} catch(...)
我不认为这句话意味着一个存在而另一个不存在有具体的技术要求 在我看来,这种情况下的“上下文”指的是“在试图理解这个主题时需要了解的情况”
换句话说:I/O流类的原始方式是在Java中进行I/O。NIO是它之上的一种进化。NIO不一定需要基本的流类,但理解这些原始概念将有助于理解NIO。通道类定义支持java.io包的流类与java.NIO包的通道类互操作的静态方法 除了互操作性的原因之外,如果直接使用java.nioapi、jdk7或更高版本,则不需要这样做 详情如下: 因此,这里的引用可能引用了Java util类通道,而不是一般的w.r.t到Java.nio