Потоки ввода-вывода - IO и NIO (http://java-course.ru)
Java 229. В чем разница между Java NIO и Java IO?
Java IO и Java NIO - это два разных подхода к работе с вводом/выводом (I/O) данных в Java. Java IO (Input/Output) - это традиционная библиотека Java для работы с потоками ввода-вывода. Она представляет собой набор классов, предоставляющих множество методов для чтения и записи данных из файлов, сетевых соединений и других источников данных. Java IO работает с блокирующими операциями ввода-вывода, что означает, что приложение будет блокироваться на выполнении операции чтения/записи до ее завершения...