缓冲区:
属性:
1:容量:(capacity)容纳数据的量。
2:极限(limit):表示缓冲区的当前的终点,不能对超过极限的区域进行读写操作(但是可以修改)。
3:位置:(position):表示缓冲区中下一个读写单元的位置,每次读写都会改变。为下一个数据读写准备,是非负数。不应该大于极限。
用于改变三个属性的方式:
clear():把极限设为容量,再把位置设为0
flip():把极限设为位置,再把位置设为0
rewind():不改变极限,把位置设为0
其他方法:
remaining ()方法返回缓冲区的剩余容量。
allocate():返回一个ByteBuffer对象,参数指定缓冲区的大小
Channel:通道
用来连接缓冲区与数据汇(数据目的地)
Channel中有两个重要的接口ReadableChannel和WriteableChannel
ReadableChannel:
声明了read(ByteBuffer str):