В данном примере
- выполняется чтение файла input.txt объемом 10мб при помощи FileChannel в ByteBuffer
- выполняется запись из ByteBuffer в файл output.txt при помощи FileChannel
В классе NetworkServerExample
- открывается сокет-канал и привязывается к порту 8088
- ожидается подключение клиента
- принимается сообщение от клиента
- закрывается сокет-канал
В классе NetworkClientExample
- открывается сокет-канал и подключается к серверу по адресу и порту
- отправляется сообщение на сервер
- закрывается сокет-канал
В классе SelectorServerExample
- создается селектор
- создаются, а затем регистрируются в селекторе два серверных канала для приема подключения
- считываются данные из канала в буффер и выводятся в консоль
В классах SelectorClientExample
- создается канал для подключения к серверу
- пользовательский ввод передается в канал для подключения к сереверу через буфер
- закрывается канал