Java NIO和IO之间第一个最大的区别是,IO是面向流的,NIO是面向缓冲区的。1.NIO需要判断是否还有需要处理的数据;2.NIO可以在过程中对数据进行顺序处理;3.IO是线程阻塞模式,没有读完就不能干别的事;NIO非阻塞模式,没有读完可以去做其他事;4.NIO使用一个单独的线程来管理多个通道;5.网络传输上支持异步io,也就是非阻塞io,传统的为阻塞io。文件读取,采用了,channel 和buffer,可以直接将一大块数据直接映射到内存中,效率更高