Channel详解

一:什么是channel

 通俗理解就是一个接口, public interface Channel extends Closeable{},用于文件的数据读写。FileChannel 用于文件的数据读写,DatagramChannel 用于 UDP 的数据读写,ServerSocketChannel 和 SocketChannel 用于 TCP 的数据读写。

二:channel与流的区别

 NIO 的通道类似于流,但有些区别如下:

 通道可以同时进行读写,而流只能读或者只能写,FileInputStream 对象只能进行读取数据的操作,通道(Channel)是双向的,可以读操作,也可以写操作。
 通道可以实现异步读写数据
 通道可以从缓冲读数据,也可以写数据到缓冲

你可能感兴趣的:(Channel详解)