- 介绍:
通道(Channel):由java.nio.channels包定义的。Channel表示IO源与目标打开的连接,Channel类似于传统的流,只不过Channel本身不能直接访问数据,Channel必须和Buffer进行交互。通道用于源节点和目标节点的连接,在JAVA NIO中负责缓冲区中数据的传输。Channel本身不存储数据,因此需要配合缓冲区进行传输。
- java.nio.channels.Channel主要的实现类
FileChannel、SocketChannel、ServerSocketChannel、DatagramChannel
- 如何获取通道
Java对支持通道的类提供了getChannel()方法
本地IO:
FileInputStream、FileOutputStream、RandomAccessFile
网络IO:
Socket、ServerSocket、DatagramSocket
这些类可以直接调用方法获取。
JDK1.7中的NIO.2为通道提供了静态方法open(),以及Files工具类的newByteChannel()方法
