Spec-Zone .ru
спецификации, руководства, описания, API
|
java.nio.file
пакет и его связанный пакет, java.nio.file.attribute
, окажите всестороннюю поддержку для файлового ввода-вывода и для того, чтобы получить доступ к файловой системе. Провайдер файловой системы zip также доступен в JDK 7. Следующие ресурсы предоставляют больше информации:
<Java home>/sample/nio/chatserver/
содержит выборки, которые демонстрируют новые API, содержавшиеся в java.nio.file
пакет<Java home>/demo/nio/zipfs/
содержит выборки, которые демонстрируют NFS NIO.2 (Сетевая файловая система) файловая системаКроме того, следующее улучшение представляется:
Область: NIO
Стандарт/Платформа: JDK 7
Резюме: До JDK 7 выпусков прямые буферы, выделенные, используя java.nio.ByteBuffer.allocateDirect(int), были выровненные на границе страницы. В JDK 7, изменилась реализация так, чтобы прямые буферы больше не были выровненной страницей. Это должно уменьшить требования к памяти приложений, которые создают много маленьких буферов. Приложения, которые ранее полагались на недокументированное выравнивание, могут вернуться к предыдущему поведению, если они выполняются с параметром командной строки: -XX:+PageAlignDirectMemory.
RFE:
Один новый class обеспечивается:
Console
- Содержит методы, чтобы получить доступ к символьно-ориентированному консольному устройству. readPassword()
методы отключают повторение таким образом, они являются подходящими для извлечения уязвимых данных, таких как пароли. Метод System.console()
возвращает уникальную консоль, связанную с виртуальной машиной Java.Следующие новые методы были добавлены к File
:
getTotalSpace()
возвращает размер раздела в байтахgetFreeSpace()
возвращает число освобожденных байтов в разделеgetUsableSpace()
возвращает число байтов, доступных на разделе, и включает проверки на полномочия записи и другие ограничения операционной системы setWritable(boolean writable, boolean ownerOnly)
и setWritable(boolean writable)
установите владельца или общее разрешение записи setReadable(boolean readable, boolean ownerOnly)
и setReadable(boolean readable)
установите владельца или общее разрешение чтения setExecutable(boolean executable, boolean ownerOnly)
и setExecutable(boolean executable)
установите владельца или общий выполнять разрешениеcanExecute()
тестирует значение выполнить разрешенияКонструкторы были добавлены к следующему class:
IOException
поддерживает объединение в цепочку исключения через добавление новых конструкторов
IOException(String, Throwable)
и
IOException(Throwable)
.Поведение следующего метода было изменено:
File.isFile()
Реализация Windows была изменена, чтобы всегда возвратиться false
для зарезервированных имен устройств, таких как ДОВОД "ПРОТИВ", NUL, AUX, LPT, и т.д. Ранее это возвратилось true
, какие клиенты, которых рассматривают ошибкой, потому что это было непоследовательно с поведением для устройств на Unix.java.nio.channels.SelectorProvider
реализация, которая основана на Linux epoll средство уведомления о событии, включается. epoll средство доступно в Linux 2.6, и более ново, ядра. Новое epoll-на-основе SelectorProvider
реализация более масштабируема чем традиционное основанное на опросе SelectorProvider
реализация, когда есть тысячи SelectableChannel
s зарегистрированный в a Selector
. Новое SelectorProvider
реализация будет использоваться по умолчанию, когда 2.6 ядра будут обнаружены. Основанное на опросе SelectorProvider
будет использоваться, когда пред2.6 ядра обнаруживаются.sun.nio.ch.disableSystemWideOverlappingFileLockCheck
средства управления, ли java.nio.channels.FileChannel.lock()
проверки, блокируются ли области другими экземплярами FileChannel
. Если это системное свойство не устанавливается в true
, FileChannel.lock()
бросит OverlappingFileLockException
если приложение пытается заблокировать область, которая перекрывает тот, который блокируется другим экземпляром FileChannel
. Системное свойство существует, чтобы предоставить совместимости предыдущие выпуски, которые не реализуют проверку блокировки файла наложения всей JVM.javax.net.ssl.SSLEngine
был добавлен. Существующий J2SDK 1.4.0 безопасных коммуникационных инфраструктуры, javax.net.ssl.SSLSocket
, было основано на модели ввода-вывода java.net. Сокет. SSLEngine
Краткие обзоры class далеко модель ввода-вывода, и листовые разработчики, свободные защитить коммуникационные трассы, используя альтернативные типы ввода-вывода. SSLEngine
может быть объединен с Новыми API ввода-вывода, чтобы создать реализации, такие как безопасное блокирование или неблокирование SocketChannel
s. Для получения дополнительной информации см. Справочник JSSE.FileInputStream
и FileOutputStream
классы, getChannel
методы были добавлены, чтобы возвратить базовое FileChannel
объект, и close
методы были пересмотрены, чтобы закрыть базовый канал.RandomAccessFile
class, a getChannel
метод был добавлен и close
метод был пересмотрен, чтобы закрыть базовый канал. RandomAccessFile
конструкторы теперь поддерживают символы режима "s" и "d", чтобы позволить спецификацию, в открытое для файла время, синхронных записей или записей синхронных данных.InputStreamReader
и OutputStreamWriter
классы, конструкторы были добавлены, которые берут поток и a Charset
объект, и getEncoding
методы были пересмотрены, чтобы возвратить историческое имя используемого кодирования. Конструкторы к InputStreamReader
и OutputStreamWriter
были добавлены, которые берут существующий CharsetDecoder
и CharsetEncoder
объекты, соответственно.java.io.File
class.java.io
пакет.