发布网友 发布时间:2022-05-26 16:01
共1个回答
热心网友 时间:2023-10-26 05:20
表示到实体(如硬件设备、文件、网络套接字或者可以执行一个或多个诸如读取或写入之类的不同 I/O 操作的程序组件)的开放连接。正如在 Channel 接口中所指定的,通道可以处于打开或关闭状态,并且它们既是可异步关闭的,又是可中断的。
多个其他接口扩展了 Channel 接口,这些接口都指定了新的 I/O 操作。
ReadableByteChannel 接口指定了 read 方法,可将字节从通道读取到缓冲区;类似地,WritableByteChannel 接口指定了 write 方法,可将字节从缓冲区写入通道。ByteChannel 接口为可读取和写入字节的常见通道统一了这两个接口。
ScatteringByteChannel 和 GatheringByteChannel 接口分别扩展了 ReadableByteChannel 和 WritableByteChannel 接口,添加的 read 和 write 方法采用的是缓冲区序列,而不只是单个缓冲区。
Channels 实用工具类定义了各种静态方法,这些方法支持 java io 包的流类和此包通道类的互操作。可根据 InputStream 或 OutputStream 构造合适的通道,反之可根据通道构造 InputStream 或 OutputStream。可构造 Reader 来使用给定的字符集对来自给定可读取字节通道的字节进行解码,反之可构造 Writer 来使用给定的字符集将字符编码到字节中,并将该字节写入给定的可写入字节通道。