一、缓冲区
新的Buffer类是常规Java类和通道之间的纽带。原始数据元素组成的固定长度数组,封装在包含状态信息的对象中,存入缓冲区。通道既可以在缓冲区中写数据,又可以从缓冲区中读取数据。还有一种特殊的缓冲区,用于内存应黑色文件。
二、通道
Channel对象模拟了通信连接,管道既可以是单向的(进或出),也可以是双向的(进或出).
三、文件锁定和内存映射文件
在多个进程协同工作的情况下,要协调各个进程对共享数据的访问,文件锁定是必不可少的工具。
将文件映射到内存,这样磁盘上的文件就像是在内存中一样,利用了操作系统的虚拟内存的功能,无需在内粗存中实际保留一份分拣的拷贝,就可实现文件内容的动态高速缓存。
四、套接字
套接字通道可工作于非块模式,并可以与选择器一同使用,因此多个套接字可实现多路传输,管理效率比java.net提供的传统套接字更高。
五、选择器
Selector 可实现就绪性选择。Selector类提供了确定一或多个通道当前状态的机制。使用选择器,借助单一线程,就可对数量庞大的活动I/O通道试试监控和维护。
六、正则表达式
七、字符集
java.nio.charsets 提供了新类用于处理字符与字节流之间的映射关系。