BtyeChannel
BtyeChannel接口提供对通道进行字节读、写的抽象方法。实际上什么都不做,只是继承了ReadableBtyeChannel接口和WriteableByteChannel。
SeekableByteChannel
SeekableByteChannel接口继承了ByteChannel,但它还提供了position()、size()等方法。
一个SeekableByteChannel可以说是保留了通道的当前position,并且该position被改变的字节通道。
SeekableByteChannel会被连接到某个实体,通常是一个文件,这个实体 包含了可变长度的可被读或者写的字节序列。
通道的当前position可以通过position()方法被查询,也可以通过position(long)方法被修改。SeekableByteChannel也提供了对所连接实体的当前size大小的操作方法。当字节写入超过了它的当前size大小时,size会增加;当调用truncate()方法截断时,size会减少。
SeekableByteChannel继承的read()方法和write()抽象方法,在未来使用上也和BtyeChannel的有所不同。
read():从通道读取字节序列到给定buffer中。字节从通道的当前position开始读取。然后用实际读取的字节数更新position。
否则,该方法的行为与ReadableBtyeChannel接口的read()相同。
write():从给定buffer写入字节序列到通道中。字节从通道的当前position开始写入,除非通道连接到一个文件,并且该文件时通过追加模式打开的,这样的话position首先移动到文件的末尾。 否则,此方法的行为完全按照WritableByteChannel接口。<