Мой детектор столкновений пропускает мой спрайт через некоторые стены и сталкивается с другими, и я не знаю почему

Сначала Java начала предлагать класс File в пакете java.io для доступа к файловым системам. Этот объект представляет файл / каталог и позволяет выполнять некоторые операции, такие как проверка наличия файла / каталога, получение свойств и их удаление. Однако у него были некоторые недостатки. Чтобы назвать несколько:

  • В классе File отсутствовали некоторые важные функции, такие как метод копирования.
  • Он также определил многие методы, которые вернули boolean. Как можно представить, в случае ошибки возвращался false, а не бросал исключение.
  • Не обеспечивал хорошее обращение с поддержкой символических ссылок.
  • Был предоставлен ограниченный набор атрибутов файла.
  • g4]

Чтобы преодолеть эти проблемы, в java 4. был введен пакет java.nio. Ключевыми функциями были:

  • Каналы и селектор: канал является абстракцией на нижнем функции файловой системы уровня, например файлы с памятью.
  • Буферы: буферизация для всех примитивных классов (кроме булевых).
  • Charset: Charset (java.nio.charset), кодеры и декодеры для отображения байтов и символы Unicode

В 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]

0
задан Jake Person 16 January 2019 в 14:56
поделиться