Сначала Java начала предлагать класс File
в пакете java.io
для доступа к файловым системам. Этот объект представляет файл / каталог и позволяет выполнять некоторые операции, такие как проверка наличия файла / каталога, получение свойств и их удаление. Однако у него были некоторые недостатки. Чтобы назвать несколько:
boolean
. Как можно представить, в случае ошибки возвращался false
, а не бросал исключение. Чтобы преодолеть эти проблемы, в java 4. был введен пакет java.nio. Ключевыми функциями были:
В java 7 представлен пакет java.nio.file, обеспечивающий лучшую поддержку обработки символических ссылок, доступа к файлам и особенно для поддержки расширенной файловой системы через классы, такие как Путь, пути и файлы. Вы можете взглянуть на описание пакета java.nio.file , чтобы получить дополнительную информацию об этом.
С учетом этого:
Каковы некоторые большие изменения от NIO до NIO.2? (например, новые методы, функции)?
blockquote>Они служат для разных целей. Чтобы указать на большие изменения, вы можете посмотреть на новый пакет
java.nio.file
.Почему необходимо обновить исходный пакет NIO?
blockquote>Это не так. Новый пакет был добавлен, а не обновлен.
Является ли NIO.2 просто синонимом пакета NIO в настоящее время? Как производительность NIO-пакета сравнивается с пакетом NIO.2?
blockquote>Нет, они не являются синонимами. Также не имеет смысла сравнивать производительность между ними, поскольку они служат различным целям. NIO более абстрактные низкоуровневые данные ввода / вывода и NIO2 сосредоточены на управлении файлами.
Надеюсь, что это поможет.
[Библиография: Oracle Certified Professional Java SE7 - всеобъемлющее руководство по сертификации OCJP7, SGGanesh и Tushar Sharma - глава 9]