Потоки ввода-вывода - 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 работает с блокирующими операциями ввода-вывода, что означает, что приложение будет блокироваться на выполнении операции чтения/записи до ее завершения...
Java 934. В чём заключается разница между IO и NIO?
В Java IO (input-output) операции чтения/записи происходят блокирующим образом. Это означает, что приложение будет заблокировано до тех пор, пока чтение/запись не завершатся. Это может привести к задержкам в выполнении приложения. В Java NIO (new/non-blocking io) операции чтения/записи происходят неблокирующим образом . Это означает, что приложение не будет заблокировано во время чтения/записи. Вместо этого, приложение может продолжать работу в то время, пока чтение/запись не завершатся...