1.IO是面向流的,NIO是面向缓冲区的。

2.Java IO的各种流是阻塞的,这就意味着,当一个线程调用read()或write()时,该线程被阻塞,直到有一些数据被读取。

Java NIO的非阻塞模式,使一个线程从某通道发送请求读取数据,但是它仅能得到目前可用的数据,如果目前没有数据可用时,就什么都不会获取。

3.NIO的选择器允许一个独立的线程来监视多个输入通道。