NIO三大核心组件Channel、Buffer、Selector的作用是什么?
请详细说明Java NIO中Channel、Buffer、Selector各自的作用及关系。
回答
专业代码师
Channel:双向数据传输通道,实现类有FileChannel、SocketChannel等。
Buffer:数据读写的内存容器,本质是数组,核心属性position、limit、capacity。
Selector:多路复用器,一个Selector可注册多个Channel,通过select()监听事件。
关系:Channel负责传输,Buffer负责存储,Selector负责调度。