Spec-Zone.ru › OpenJDK 17

Класс Preferences

java.lang.Object
java.util.prefs.Preferences
Прямые известные подклассы:
AbstractPreferences
public abstract class Preferences extends Object
Узел в иерархическом наборе данных настроек. Этот класс позволяет приложениям хранить и извлекать данные настроек и конфигурации пользователя и системы. Эти данные хранятся постоянно в реализации-зависимом хранилище. Типичные реализации включают плоские файлы, регистры, специфичные для ОС, серверы каталогов и базы данных SQL. Пользователю этого класса не нужно беспокоиться о деталях хранилища.

Существует два отдельных дерева узлов настроек: одно для пользовательских настроек и одно для системных настроек. Каждый пользователь имеет отдельное дерево пользовательских настроек, и все пользователи в данной системе используют одно и то же дерево системных настроек. Точное описание «пользователя» и «системы» будет зависеть от реализации. Типичная информация, хранящаяся в дереве пользовательских настроек, может включать выбор шрифта, выбор цвета или предпочтительное расположение и размер окна для конкретного приложения. Типичная информация, хранящаяся в дереве системных настроек, может включать данные конфигурации установки приложения.

Узлы в дереве настроек называются аналогично каталогам в иерархической файловой системе. Каждый узел в дереве настроек имеет имя узла (которое необязательно уникально), уникальное абсолютное имя пути и имя пути относительно каждого предка, включая себя.

Узел корня имеет имя узла пустую строку (""). Каждый другой узел имеет произвольное имя узла, указанное при его создании. Единственные ограничения на это имя состоят в том, что оно не может быть пустой строкой и не может содержать символ косой черты ('/').

Узел корня имеет абсолютное имя пути "/". Дочерние узлы корневого узла имеют абсолютные имена путей "/" + <имя узла>. Все остальные узлы имеют абсолютные имена путей <абсолютный путь родительского узла> + "/" + <имя узла>. Обратите внимание, что все абсолютные имена путей начинаются с символа косой черты.

Имя пути узла n, относительное к его предку a, просто строка, которая должна быть добавлена к абсолютному имени пути a для формирования абсолютного имени пути n, при этом начальный символ косой черты (если он присутствует) удаляется. Обратите внимание:

  • Никакие относительные имена путей не начинаются с символа косой черты.
  • Имя пути каждого узла, относительное к самому себе, — пустая строка.
  • Имя пути каждого узла, относительное к его родителю, — это его имя узла (за исключением корневого узла, у которого нет родителя).
  • Имя пути каждого узла, относительное к корню, — это абсолютное имя пути, из которого удален начальный символ косой черты.

Наконец, обратите внимание:

  • Имя пути не содержит нескольких последовательных символов косой черты.
  • Ни одно имя пути, за исключением абсолютного имени пути корневого узла, не заканчивается на символе косой черты.
  • Любая строка, которая соответствует этим двум правилам, является допустимым именем пути.

Все методы, изменяющие данные настроек, разрешено выполнять асинхронно; они могут возвращать значение немедленно, и изменения в конечном итоге будут передаваться в постоянное хранилище с задержкой, зависящей от реализации. Метод flush может использоваться для синхронного принудительного обновления хранилища. Нормальная остановка виртуальной машины Java не приведет к потере ожидаемых обновлений — явное обращение flush не требуется при завершении для обеспечения сохранения ожидаемых обновлений.

Все методы, считывающие настройки из объекта Preferences, требуют от вызывающего предоставления значения по умолчанию. Значение по умолчанию возвращается, если значение ранее не было установлено или если хранилище недоступно. Цель состоит в том, чтобы приложения могли работать, хотя и с несколько ухудшенной функциональностью, даже если хранилище станет недоступным. Некоторые методы, например flush, имеют семантику, которая препятствует их работе, если хранилище недоступно. Обычные приложения не должны вызывать ни один из этих методов, которые могут быть определены по тому, что они объявлены как выбрасывающие BackingStoreException.

Методы этого класса могут вызываться одновременно несколькими потоками в одной JVM без необходимости внешней синхронизации, и результаты будут эквивалентны некоторому последовательному выполнению. Если этот класс используется одновременно разными JVM, которые хранят свои данные настроек в одном хранилище, данные хранилища не будут повреждены, но никаких других гарантий относительно согласованности данных настроек не предоставляется.

Этот класс содержит средства экспорта/импорта, позволяющие «экспортировать» настройки в XML-документ и «импортировать» XML-документы, представляющие настройки, обратно в систему. Это средство может использоваться для резервного копирования всех или части дерева настроек и последующего восстановления из резервной копии.

XML-документ имеет следующее объявление DOCTYPE:


 <!DOCTYPE preferences SYSTEM "http://java.sun.com/dtd/preferences.dtd">
 
Обратите внимание, что системный URI (http://java.sun.com/dtd/preferences.dtd) не используется при экспорте или импорте настроек; он просто служит строкой для уникальной идентификации DTD, который выглядит так:

    <?xml version="1.0" encoding="UTF-8"?>

    <!-- DTD for a Preferences tree. -->

    <!-- The preferences element is at the root of an XML document
         representing a Preferences tree. -->
    <!ELEMENT preferences (root)>

    <!-- The preferences element contains an optional version attribute,
          which specifies version of DTD. -->
    <!ATTLIST preferences EXTERNAL_XML_VERSION CDATA "0.0" >

    <!-- The root element has a map representing the root's preferences
         (if any), and one node for each child of the root (if any). -->
    <!ELEMENT root (map, node*) >

    <!-- Additionally, the root contains a type attribute, which
         specifies whether it's the system or user root. -->
    <!ATTLIST root
              type (system|user) #REQUIRED >

    <!-- Each node has a map representing its preferences (if any),
         and one node for each child (if any). -->
    <!ELEMENT node (map, node*) >

    <!-- Additionally, each node has a name attribute -->
    <!ATTLIST node
              name CDATA #REQUIRED >

    <!-- A map represents the preferences stored at a node (if any). -->
    <!ELEMENT map (entry*) >

    <!-- An entry represents a single preference, which is simply
          a key-value pair. -->
    <!ELEMENT entry EMPTY >
    <!ATTLIST entry
              key   CDATA #REQUIRED
              value CDATA #REQUIRED >
 
Каждая Preferences реализация должна иметь связанную реализацию PreferencesFactory. Каждая реализация Java(TM) SE должна предоставить способ указания используемой реализации PreferencesFactory для создания корневых узлов настроек. Это позволяет администратору заменить реализацию настроек по умолчанию альтернативной реализацией.
Примечание реализации:
Реализация PreferencesFactory расположена следующим образом:
  1. Если системная переменная java.util.prefs.PreferencesFactory определена, то она рассматривается как полное имя класса, реализующего интерфейс PreferencesFactory. Класс загружается и создается экземпляр; если этот процесс завершается неудачно, то генерируется неопределенная ошибка.

  2. Если файл реализации класса PreferencesFactory был установлен в файле JAR, который виден загрузчику классов system class loader, и этот JAR-файл содержит файл конфигурации поставщика, названный java.util.prefs.PreferencesFactory в каталоге ресурсов META-INF/services, то имя первого класса, указанного в этом файле, используется. Если предоставлено более одного такого JAR-файла, используется первый найденный. Класс загружается и создается экземпляр; если этот процесс завершается неудачно, то генерируется неопределенная ошибка.

  3. Наконец, если ни системная переменная, ни расширенный JAR-файл не предоставлены, то загружается и создается экземпляр системной реализации PreferencesFactory для платформы.

С:
1.4

Краткое описание полей

Модификатор и тип Поле Описание
static final int MAX_KEY_LENGTH
Максимальная длина строки, разрешенной в качестве ключа (80 символов).
static final int MAX_NAME_LENGTH
Максимальная длина имени узла (80 символов).
static final int MAX_VALUE_LENGTH
Максимальная длина строки, разрешенной в качестве значения (8192 символов).

Краткое описание конструкторов

Preferences()
Модификатор Конструктор Описание
protected
Единственный конструктор.

Краткое описание методов

Модификатор и тип Метод Описание
abstract String absolutePath()
Возвращает абсолютный путь к узлу настроек.
abstract void addNodeChangeListener(NodeChangeListener ncl)
Регистрирует указанный слушатель для получения событий изменения узла для этого узла.
abstract void addPreferenceChangeListener(PreferenceChangeListener pcl)
Регистрирует указанный слушатель для получения событий изменения настроек для этого узла настроек.
abstract String[] childrenNames()
Возвращает имена дочерних узлов этого узла настроек, относительно этого узла.
abstract void clear()
Удаляет все настройки (ассоциации ключ-значение) в этом узле настроек.
abstract void exportNode(OutputStream os)
Выводит на указанный выходной поток XML-документ, представляющий все настройки, содержащиеся в этом узле (но не его потомки).
abstract void exportSubtree(OutputStream os)
Выводит XML-документ, представляющий все настройки, содержащиеся в этом узле и всех его потомков.
abstract void flush()
Принудительно сохраняет любые изменения в содержимом этого узла настроек и его потомков в постоянном хранилище.
abstract String get(String key, String def)
Возвращает значение, связанное с указанным ключом в этом узле настроек.
abstract boolean getBoolean(String key, boolean def)
Возвращает булево значение, представленное строкой, связанной с указанным ключом в этом узле настроек.
abstract byte[] getByteArray(String key, byte[] def)
Возвращает значение типа byte array, представленное строкой, связанной с указанным ключом в этом узле настроек.
abstract double getDouble(String key, double def)
Возвращает значение типа double, представленное строкой, связанной с указанным ключом в этом узле настроек.
abstract float getFloat(String key, float def)
Возвращает значение типа float, представленное строкой, связанной с указанным ключом в этом узле настроек.
abstract int getInt(String key, int def)
Возвращает значение типа int, представленное строкой, связанной с указанным ключом в этом узле настроек.
abstract long getLong(String key, long def)
Возвращает значение типа long, представленное строкой, связанной с указанным ключом в этом узле настроек.
static void importPreferences(InputStream is)
Импортирует все настройки, представленные XML-документом в указанном входном потоке.
abstract boolean isUserNode()
Возвращает true, если этот узел настроек находится в дереве пользовательских настроек, false, если он находится в системном дереве настроек.
abstract String[] keys()
Возвращает все ключи, имеющие связанное значение в этом узле настроек.
abstract String name()
Возвращает имя этого узла настроек, относительно его родительского узла.
abstract Preferences node(String pathName)
Возвращает узел настроек с указанным именем в том же дереве, что и этот узел, создавая его и любые его предков, если они еще не существуют.
abstract boolean nodeExists(String pathName)
Возвращает true, если узел настроек с указанным именем существует в том же дереве, что и этот узел.
abstract Preferences parent()
Возвращает родителя этого узла настроек или null, если это корень.
abstract void put(String key, String value)
Связывает указанное значение с указанным ключом в этом узле настроек.
abstract void putBoolean(String key, boolean value)
Связывает строку, представляющую указанное булево значение, с указанным ключом в этом узле настроек.
abstract void putByteArray(String key, byte[] value)
Связывает строку, представляющую указанный массив байтов, с указанным ключом в этом узле настроек.
abstract void putDouble(String key, double value)
Связывает строку, представляющую указанное значение типа double, с указанным ключом в этом узле настроек.
abstract void putFloat(String key, float value)
Связывает строку, представляющую указанное значение типа float, с указанным ключом в этом узле настроек.
abstract void putInt(String key, int value)
Связывает строку, представляющую указанное значение типа int, с указанным ключом в этом узле настроек.
abstract void putLong(String key, long value)
Связывает строку, представляющую указанное значение типа long, с указанным ключом в этом узле настроек.
abstract void remove(String key)
Удаляет значение, связанное с указанным ключом в этом узле настроек, если оно есть.
abstract void removeNode()
Удаляет этот узел настроек и все его потомки, делая недействительными любые настройки, содержащиеся в удаленных узлах.
abstract void removeNodeChangeListener(NodeChangeListener ncl)
Удаляет указанный NodeChangeListener, чтобы он больше не получал событий изменения.
abstract void removePreferenceChangeListener(PreferenceChangeListener pcl)
Удаляет указанного слушателя событий изменения настроек, чтобы он больше не получал событий изменения настроек.
abstract void sync()
Обеспечивает, что будущие чтения из этого узла настроек и его потомков будут отражать любые изменения, которые были внесены в постоянное хранилище (из любого виртуальной машины) до вызова %%%CODE_BLOCK_105%%.
static Preferences systemNodeForPackage(Class<?> c)
Возвращает узел настроек из системного дерева настроек, связанный (по соглашению) с пакетом указанного класса.
static Preferences systemRoot()
Возвращает корневой узел настроек для системы.
abstract String toString()
Возвращает строковое представление этого узла настроек, как если бы оно было вычислено выражением:(this.isUserNode() ? "User" : "System") + " Preference Node: " + this.absolutePath().
static Preferences userNodeForPackage(Class<?> c)
Возвращает узел настроек из дерева настроек текущего пользователя, связанный (по соглашению) с пакетом указанного класса.
static Preferences userRoot()
Возвращает корневой узел настроек для текущего пользователя.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание полей

MAX_KEY_LENGTH

public static final int MAX_KEY_LENGTH
Максимальная длина строки, разрешенной в качестве ключа (80 символов).
См. также:
  • Значения константных полей

MAX_VALUE_LENGTH

public static final int MAX_VALUE_LENGTH
Максимальная длина строки, разрешенной в качестве значения (8192 символов).
См. также:
  • Значения константных полей

MAX_NAME_LENGTH

public static final int MAX_NAME_LENGTH
Максимальная длина имени узла (80 символов).
См. также:
  • Значения константных полей

Подробное описание конструкторов

Preferences

protected Preferences()
Единственный конструктор. (Для вызова конструкторами подклассов, обычно неявным).

Подробное описание методов

userNodeForPackage

public static Preferences userNodeForPackage(Class<?> c)
Возвращает узел предпочтений текущего пользователя в дереве предпочтений, связанный (по соглашению) с пакетом указанного класса. Соглашение таково: полное имя узла — это полное квалифицированное имя пакета, предваряемое слешем ('/'), и каждая точка ('.') заменяется слешем. Например, полное имя узла, связанного с классом com.acme.widget.Foo , — это /com/acme/widget.

Это соглашение не относится к безымянному пакету, узел предпочтений которого — <unnamed>. Этот узел не предназначен для долгосрочного использования, но для удобства при раннем разработке программ, которые еще не принадлежат к пакету, и для «одноразовых» программ. Значимые данные не должны храниться в этом узле, так как он общий для всех программ, которые его используют.

Класс Foo , желающий получить доступ к предпочтениям, относящимся к его пакету, может получить узел предпочтений следующим образом:

    static Preferences prefs = Preferences.userNodeForPackage(Foo.class);
 
Этот прием исключает необходимость использования строки для описания узла предпочтений и уменьшает вероятность ошибки во время выполнения. (Если имя класса написано с ошибкой, это обычно приведет к ошибке компиляции.)

Вызов этого метода приведет к созданию возвращаемого узла и его предков, если они еще не существуют. Если возвращаемый узел не существовал до этого вызова, этот узел и любые предки, созданные этим вызовом, не гарантированно станут постоянными до тех пор, пока метод flush не будет вызван на возвращаемом узле (или одном из его предков или потомков).

Параметры:
c - класс, для пакета которого требуется узел предпочтений пользователя.
Возвращает:
узел предпочтений пользователя, связанный с пакетом, членом которого является c.
Исключения:
NullPointerException - если c равен null.
SecurityException - если присутствует менеджер безопасности и он запрещает RuntimePermission("preferences").
См. также:
  • RuntimePermission

systemNodeForPackage

public static Preferences systemNodeForPackage(Class<?> c)
Возвращает узел предпочтений системы, связанный (по соглашению) с пакетом указанного класса. Соглашение таково: полное имя узла — это полное квалифицированное имя пакета, предваряемое слешем ('/'), и каждая точка ('.') заменяется слешем. Например, полное имя узла, связанного с классом com.acme.widget.Foo , — это /com/acme/widget.

Это соглашение не относится к безымянному пакету, узел предпочтений которого — <unnamed>. Этот узел не предназначен для долгосрочного использования, но для удобства при раннем разработке программ, которые еще не принадлежат к пакету, и для «одноразовых» программ. Значимые данные не должны храниться в этом узле, так как он общий для всех программ, которые его используют.

Класс Foo , желающий получить доступ к предпочтениям, относящимся к его пакету, может получить узел предпочтений следующим образом:

  static Preferences prefs = Preferences.systemNodeForPackage(Foo.class);
 
Этот прием исключает необходимость использования строки для описания узла предпочтений и уменьшает вероятность ошибки во время выполнения. (Если имя класса написано с ошибкой, это обычно приведет к ошибке компиляции.)

Вызов этого метода приведет к созданию возвращаемого узла и его предков, если они еще не существуют. Если возвращаемый узел не существовал до этого вызова, этот узел и любые предки, созданные этим вызовом, не гарантированно станут постоянными до тех пор, пока метод flush не будет вызван на возвращаемом узле (или одном из его предков или потомков).

Параметры:
c - класс, для пакета которого требуется узел предпочтений системы.
Возвращает:
узел предпочтений системы, связанный с пакетом, членом которого является c.
Исключения:
NullPointerException - если c равен null.
SecurityException - если присутствует менеджер безопасности и он запрещает RuntimePermission("preferences").
См. также:
  • RuntimePermission

userRoot

public static Preferences userRoot()
Возвращает корневой узел предпочтений текущего пользователя.
Возвращает:
корневой узел предпочтений текущего пользователя.
Исключения:
SecurityException - Если присутствует менеджер безопасности и он запрещает RuntimePermission("preferences").
См. также:
  • RuntimePermission

systemRoot

public static Preferences systemRoot()
Возвращает корневой узел предпочтений системы.
Возвращает:
корневой узел предпочтений системы.
Исключения:
SecurityException - Если присутствует менеджер безопасности и он запрещает RuntimePermission("preferences").
См. также:
  • RuntimePermission

put

public abstract void put(String key, String value)
Связывает указанное значение с указанным ключом в этом узле предпочтений.
Параметры:
key - ключ, с которым будет связано указанное значение.
value - значение, которое будет связано с указанным ключом.
Исключения:
NullPointerException - если ключ или значение являются null.
IllegalArgumentException - если key.length() превышает MAX_KEY_LENGTH или если value.length превышает MAX_VALUE_LENGTH.
IllegalStateException - если этот узел (или предок) был удален методом removeNode().
IllegalArgumentException - если ключ или значение содержат нулевой управляющий символ, код U+0000.

get

public abstract String get(String key, String def)
Возвращает значение, связанное с указанным ключом в этом узле предпочтений. Возвращает указанное значение по умолчанию, если значение не связано с ключом или доступ к хранилищу недоступен.

Некоторые реализации могут хранить значения по умолчанию в своих хранилищах. Если нет значения, связанного с указанным ключом, но есть такое хранимое значение по умолчанию, оно возвращается в приоритете над указанным значением по умолчанию.

Параметры:
key - ключ, связанное значение которого должно быть возвращено.
def - значение, которое должно быть возвращено, если в этом узле предпочтений нет значения, связанного с key.
Возвращает:
значение, связанное с key, или def , если с key не связано значение, или доступ к хранилищу недоступен.
Исключения:
IllegalStateException - если этот узел (или предок) был удален методом removeNode().
NullPointerException - если key равен null. (Значение null для def разрешено.)
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.

remove

public abstract void remove(String key)
Удаляет значение, связанное с указанным ключом в этом узле предпочтений, если оно есть.

Если данная реализация поддерживает сохраненные значения по умолчанию, и существует такое значение по умолчанию для указанного предпочтения, сохраненное значение по умолчанию будет «экспонировано» этим вызовом, в смысле, что оно будет возвращено последующим вызовом get.

Параметры:
key - ключ, отображение которого должно быть удалено из узла предпочтений.
Исключения:
NullPointerException - если key равен null.
IllegalStateException - если этот узел (или предок) был удален методом removeNode().
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.

clear

public abstract void clear() throws BackingStoreException
Удаляет все предпочтения (ассоциации ключ-значение) в этом узле предпочтений. Этот вызов не влияет на какие-либо дочерние узлы этого узла.

Если данная реализация поддерживает сохранённые значения по умолчанию, и этот узел в иерархии предпочтений содержит такие значения по умолчанию, то сохранённые значения по умолчанию будут «экспонированы» этим вызовом, в том смысле, что они будут возвращены последующими вызовами get.

Исключение:
BackingStoreException - если данная операция не может быть завершена из-за сбоя в базовом хранилище или невозможности с ним взаимодействовать.
IllegalStateException - если этот узел (или его предок) был удалён с помощью метода removeNode().
См. также:
  • removeNode()

putInt

public abstract void putInt(String key, int value)
Связывает строку, представляющую указанное целое значение, с указанным ключом в этом узле предпочтений. Связанная строка — это строка, которая была бы возвращена, если бы целое значение было передано в Integer.toString(int). Этот метод предназначен для использования совместно с getInt(java.lang.String, int).
Параметры:
key - ключ, с которым будет связана строковая форма значения.
value - значение, строковая форма которого будет связана с ключом.
Исключение:
NullPointerException - если key равно null.
IllegalArgumentException - если key.length() превышает MAX_KEY_LENGTH.
IllegalStateException - если этот узел (или его предок) был удалён с помощью метода removeNode().
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
См. также:
  • getInt(String,int)

getInt

public abstract int getInt(String key, int def)
Возвращает целое значение, представленное строкой, связанной с указанным ключом в этом узле предпочтений. Строка преобразуется в целое число, как в Integer.parseInt(String). Возвращает указанное значение по умолчанию, если значение не связано с ключом, базовая система хранения недоступна или если Integer.parseInt(String) выбросит исключение NumberFormatException, если связанное значение было передано. Этот метод предназначен для использования совместно с putInt(java.lang.String, int).

Если реализация поддерживает сохранённые значения по умолчанию и такое значение по умолчанию существует, доступно и может быть преобразовано в целое число с помощью Integer.parseInt, это целое число возвращается вместо указанного значения по умолчанию.

Параметры:
key - ключ, связанное значение которого должно быть возвращено как целое число.
def - значение по умолчанию, которое должно быть возвращено в том случае, если в этом узле предпочтений нет значения, связанного с key, или связанное значение не может быть интерпретировано как целое число, или базовая система хранения недоступна.
Возвращает:
целое значение, представленное строкой, связанной с key в этом узле предпочтений, или def, если связанного значения нет или оно не может быть интерпретировано как целое число.
Исключение:
IllegalStateException - если этот узел (или его предок) был удалён с помощью метода removeNode().
NullPointerException - если key равно null.
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
См. также:
  • putInt(String,int)
  • get(String,String)

putLong

public abstract void putLong(String key, long value)
Связывает строку, представляющую указанное значение типа long, с указанным ключом в этом узле предпочтений. Связанная строка — это та, что была бы возвращена, если бы значение типа long было передано в Long.toString(long). Этот метод предназначен для использования совместно с getLong(java.lang.String, long).
Параметры:
key - ключ, с которым будет связана строковая форма значения.
value - значение, строковая форма которого будет связана с ключом.
Исключение:
NullPointerException - если key равно null.
IllegalArgumentException - если key.length() превышает MAX_KEY_LENGTH.
IllegalStateException - если этот узел (или его предок) был удалён с помощью метода removeNode().
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
См. также:
  • getLong(String,long)

getLong

public abstract long getLong(String key, long def)
Возвращает значение типа long, представленное строкой, связанной с указанным ключом в этом узле предпочтений. Строка преобразуется в long, как в Long.parseLong(String). Возвращает указанное значение по умолчанию, если значение не связано с ключом, базовая система хранения недоступна или если Long.parseLong(String) выбросит исключение NumberFormatException, если связанное значение было передано. Этот метод предназначен для использования совместно с putLong(java.lang.String, long).

Если реализация поддерживает сохранённые значения по умолчанию и такое значение по умолчанию существует, доступно и может быть преобразовано в long с помощью Long.parseLong, это значение long возвращается вместо указанного значения по умолчанию.

Параметры:
key - ключ, связанное значение которого должно быть возвращено как long.
def - значение по умолчанию, которое должно быть возвращено в том случае, если в этом узле предпочтений нет значения, связанного с key, или связанное значение не может быть интерпретировано как long, или базовая система хранения недоступна.
Возвращает:
значение типа long, представленное строкой, связанной с key в этом узле предпочтений, или def, если связанного значения нет или оно не может быть интерпретировано как long.
Исключение:
IllegalStateException - если этот узел (или его предок) был удалён с помощью метода removeNode().
NullPointerException - если key равно null.
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
См. также:
  • putLong(String,long)
  • get(String,String)

putBoolean

public abstract void putBoolean(String key, boolean value)
Связывает строку, представляющую указанное булево значение, с указанным ключом в этом узле предпочтений. Связанная строка — "true", если значение true, и "false", если значение false. Этот метод предназначен для использования совместно с getBoolean(java.lang.String, boolean).
Параметры:
key - ключ, с которым будет связана строковая форма значения.
value - значение, строковая форма которого будет связана с ключом.
Исключение:
NullPointerException - если key равно null.
IllegalArgumentException - если key.length() превышает MAX_KEY_LENGTH.
IllegalStateException - если этот узел (или его предок) был удалён с помощью метода removeNode().
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
См. также:
  • getBoolean(String,boolean)
  • get(String,String)

getBoolean

public abstract boolean getBoolean(String key, boolean def)
Возвращает булево значение, представленное строкой, связанной с указанным ключом в этом узле предпочтений. Допустимые строки — "true", представляющая true, и "false", представляющая false. Регистр игнорируется, поэтому, например, "TRUE" и "False" также допустимы. Этот метод предназначен для использования совместно с putBoolean(java.lang.String, boolean).

Возвращает указанное значение по умолчанию, если значение не связано с ключом, базовая система хранения недоступна или связанное значение не является ни "true", ни "false", не учитывая регистр.

Если реализация поддерживает сохранённые значения по умолчанию и такое значение по умолчанию существует и доступно, оно используется вместо указанного значения по умолчанию, если сохранённое значение по умолчанию не равно "true" или "false", не учитывая регистр, в этом случае используется указанное значение по умолчанию.

Параметры:
key - ключ, связанное значение которого должно быть возвращено как boolean.
def - значение по умолчанию, которое должно быть возвращено в том случае, если в этом узле предпочтений нет значения, связанного с key, или связанное значение не может быть интерпретировано как boolean, или базовая система хранения недоступна.
Возвращает:
булево значение, представленное строкой, связанной с key в этом узле предпочтений, или def, если связанного значения нет или оно не может быть интерпретировано как boolean.
Исключение:
IllegalStateException - если этот узел (или его предок) был удалён с помощью метода removeNode().
NullPointerException - если key равно null.
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
См. также:
  • get(String,String)
  • putBoolean(String,boolean)

putFloat

public abstract void putFloat(String key, float value)
Ассоциирует строку, представляющую указанное значение с плавающей точкой, с указанным ключом в этом узле настроек. Ассоциированная строка — это та, которая была бы возвращена, если бы значение с плавающей точкой было передано в Float.toString(float). Этот метод предназначен для совместного использования с getFloat(java.lang.String, float).
Parameters:
key - ключ, с которым будет ассоциирована строковая форма значения.
value - значение, строковая форма которого должна быть ассоциирована с ключом.
Throws:
NullPointerException - если key является null.
IllegalArgumentException - если key.length() превышает MAX_KEY_LENGTH.
IllegalStateException - если этот узел (или предковый) был удалён методом removeNode().
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
See Also:
  • getFloat(String,float)

getFloat

public abstract float getFloat(String key, float def)
Возвращает значение с плавающей точкой, представленное строкой, ассоциированной с указанным ключом в этом узле настроек. Строка преобразуется в число по аналогии с Float.parseFloat(String). Возвращает указанное значение по умолчанию, если нет значения, связанного с ключом, хранилище недоступно или если Float.parseFloat(String) вызовет NumberFormatException, если ассоциированное значение было бы передано. Этот метод предназначен для совместного использования с putFloat(java.lang.String, float).

Если реализация поддерживает хранимые значения по умолчанию и такое значение существует, доступно и может быть преобразовано в число с плавающей точкой с помощью Float.parseFloat, это число с плавающей точкой возвращается вместо указанного значения по умолчанию.

Parameters:
key - ключ, связанное значение которого должно быть возвращено как число с плавающей точкой.
def - значение, которое должно быть возвращено в том случае, если в этом узле настроек нет значения, связанного с key, или ассоциированное значение не может быть интерпретировано как число с плавающей точкой, или хранилище недоступно.
Returns:
значение с плавающей точкой, представленное строкой, связанной с key в этом узле настроек, или def, если ассоциированное значение не существует или не может быть интерпретировано как число с плавающей точкой.
Throws:
IllegalStateException - если этот узел (или предковый) был удалён методом removeNode().
NullPointerException - если key является null.
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
See Also:
  • putFloat(String,float)
  • get(String,String)

putDouble

public abstract void putDouble(String key, double value)
Ассоциирует строку, представляющую указанное значение с двойной точностью, с указанным ключом в этом узле настроек. Ассоциированная строка — это та, которая была бы возвращена, если бы значение с двойной точностью было передано в Double.toString(double). Этот метод предназначен для совместного использования с getDouble(java.lang.String, double).
Parameters:
key - ключ, с которым будет ассоциирована строковая форма значения.
value - значение, строковая форма которого должна быть ассоциирована с ключом.
Throws:
NullPointerException - если key является null.
IllegalArgumentException - если key.length() превышает MAX_KEY_LENGTH.
IllegalStateException - если этот узел (или предковый) был удалён методом removeNode().
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
See Also:
  • getDouble(String,double)

getDouble

public abstract double getDouble(String key, double def)
Возвращает значение с двойной точностью, представленное строкой, ассоциированной с указанным ключом в этом узле настроек. Строка преобразуется в число по аналогии с Double.parseDouble(String). Возвращает указанное значение по умолчанию, если нет значения, связанного с ключом, хранилище недоступно или если Double.parseDouble(String) вызовет NumberFormatException, если ассоциированное значение было бы передано. Этот метод предназначен для совместного использования с putDouble(java.lang.String, double).

Если реализация поддерживает хранимые значения по умолчанию и такое значение существует, доступно и может быть преобразовано в число с двойной точностью с помощью Double.parseDouble, это число с двойной точностью возвращается вместо указанного значения по умолчанию.

Parameters:
key - ключ, связанное значение которого должно быть возвращено как число с двойной точностью.
def - значение, которое должно быть возвращено в том случае, если в этом узле настроек нет значения, связанного с key, или ассоциированное значение не может быть интерпретировано как число с двойной точностью, или хранилище недоступно.
Returns:
значение с двойной точностью, представленное строкой, связанной с key в этом узле настроек, или def, если ассоциированное значение не существует или не может быть интерпретировано как число с двойной точностью.
Throws:
IllegalStateException - если этот узел (или предковый) был удалён методом removeNode().
NullPointerException - если key является null.
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
See Also:
  • putDouble(String,double)
  • get(String,String)

putByteArray

public abstract void putByteArray(String key, byte[] value)
Ассоциирует строку, представляющую указанный массив байтов, с указанным ключом в этом узле настроек. Ассоциированная строка — это кодирование массива байтов в формате Base64, как определено в RFC 2045, Раздел 6.8, с одной небольшой корректировкой: строка будет состоять только из символов из алфавита Base64; она не будет содержать символов новой строки. Обратите внимание, что максимальная длина массива байтов ограничена тремя четвертями от MAX_VALUE_LENGTH, чтобы длина закодированной в Base64 строки не превысила MAX_VALUE_LENGTH. Этот метод предназначен для совместного использования с getByteArray(java.lang.String, byte[]).
Parameters:
key - ключ, с которым будет ассоциирована строковая форма значения.
value - значение, строковая форма которого должна быть ассоциирована с ключом.
Throws:
NullPointerException - если ключ или значение являются null.
IllegalArgumentException - если длина ключа превышает MAX_KEY_LENGTH, или если длина значения превышает MAX_VALUE_LENGTH*3/4.
IllegalStateException - если этот узел (или предковый) был удалён методом removeNode().
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
See Also:
  • getByteArray(String,byte[])
  • get(String,String)

getByteArray

public abstract byte[] getByteArray(String key, byte[] def)
Возвращает массив байтов, представленный строкой, связанной с указанным ключом в этом узле настроек. Валидные строки — это бинарные данные, закодированные в формате Base64, как определено в RFC 2045, Раздел 6.8, с одной небольшой корректировкой: строка должна состоять только из символов из алфавита Base64; не допускаются символы новой строки или лишние символы. Этот метод предназначен для совместного использования с putByteArray(java.lang.String, byte[]).

Возвращает указанное значение по умолчанию, если нет значения, связанного с ключом, хранилище недоступно или ассоциированное значение не является валидным массивом байтов, закодированных в Base64 (как определено выше).

Если реализация поддерживает хранимые значения по умолчанию и такое значение существует и доступно, оно используется вместо указанного значения по умолчанию, за исключением случаев, когда хранимое значение по умолчанию не является валидным массивом байтов, закодированным в Base64 (как определено выше), в этом случае используется указанное значение по умолчанию.

Parameters:
key - ключ, связанное значение которого должно быть возвращено как массив байтов.
def - значение, которое должно быть возвращено в том случае, если в этом узле настроек нет значения, связанного с key, или ассоциированное значение не может быть интерпретировано как массив байтов, или хранилище недоступно.
Returns:
массив байтов, представленный строкой, связанной с key в этом узле настроек, или def, если ассоциированное значение не существует или не может быть интерпретировано как массив байтов.
Throws:
IllegalStateException - если этот узел (или предковый) был удалён методом removeNode().
NullPointerException - если key является null. (Значение null для def разрешено.)
IllegalArgumentException - если ключ содержит нулевой управляющий символ, код U+0000.
See Also:
  • get(String,String)
  • putByteArray(String,byte[])

keys

public abstract String[] keys() throws BackingStoreException
Возвращает все ключи, имеющие сопоставленное значение в этом узле настроек. (Возвращаемый массив будет нулевого размера, если в этом узле нет настроек.)

Если реализация поддерживает сохранённые значения по умолчанию и в этом узле есть такие значения по умолчанию, которые не были переопределены явными настройками, то значения по умолчанию возвращаются в массиве дополнительно к любым явным настройкам.

Возвращает:
массив ключей, имеющих сопоставленное значение в этом узле настроек.
Бросает:
BackingStoreException - если данная операция не может быть завершена из-за сбоя в хранилище или невозможности с ним связаться.
IllegalStateException - если этот узел (или какой-либо его предок) был удалён методом removeNode().

childrenNames

public abstract String[] childrenNames() throws BackingStoreException
Возвращает имена дочерних узлов этого узла настроек, относительно этого узла. (Возвращаемый массив будет нулевого размера, если у этого узла нет дочерних узлов.)
Возвращает:
имена дочерних узлов этого узла настроек.
Бросает:
BackingStoreException - если данная операция не может быть завершена из-за сбоя в хранилище или невозможности с ним связаться.
IllegalStateException - если этот узел (или какой-либо его предок) был удалён методом removeNode().

parent

public abstract Preferences parent()
Возвращает родительский узел настроек для этого узла, или null если это корневой узел.
Возвращает:
родительский узел настроек для этого узла.
Бросает:
IllegalStateException - если этот узел (или какой-либо его предок) был удалён методом removeNode().

node

public abstract Preferences node(String pathName)
Возвращает узел настроек с указанным именем в том же дереве, что и этот узел, создавая его и его предков, если они ещё не существуют. Принимает имя пути, относительное или абсолютное. Относительные имена путей (не начинающиеся с символа косой черты ('/')) интерпретируются относительно этого узла настроек.

Если возвращаемый узел не существовал до этого вызова, этот узел и любые созданные этим вызовом предки не гарантируют своего постоянного существования до тех пор, пока метод flush не будет вызван на возвращённом узле (или на одном из его предков или потомков).

Параметры:
pathName - имя пути узла настроек, который необходимо вернуть.
Возвращает:
указанный узел настроек.
Бросает:
IllegalArgumentException - если имя пути некорректно (например, содержит несколько последовательных символов косой черты или заканчивается символом косой черты и имеет длину более одного символа).
NullPointerException - если имя пути null.
IllegalStateException - если этот узел (или какой-либо его предок) был удалён методом removeNode().
См. также:
  • flush()

nodeExists

public abstract boolean nodeExists(String pathName) throws BackingStoreException
Возвращает true, если узел настроек с указанным именем существует в том же дереве, что и этот узел. Относительные имена путей (не начинающиеся с символа косой черты ('/')) интерпретируются относительно этого узла настроек.

Если этот узел (или какой-либо его предок) уже был удалён методом removeNode(), то вызов этого метода с именем пути "", является допустимым; он вернёт false. Таким образом, выражение p.nodeExists("") может использоваться для проверки того, был ли p удалён.

Параметры:
pathName - имя пути узла, существование которого нужно проверить.
Возвращает:
true, если указанный узел существует.
Бросает:
BackingStoreException - если данная операция не может быть завершена из-за сбоя в хранилище или невозможности с ним связаться.
IllegalArgumentException - если имя пути некорректно (например, содержит несколько последовательных символов косой черты или заканчивается символом косой черты и имеет длину более одного символа).
NullPointerException - если имя пути null.
IllegalStateException - если этот узел (или какой-либо его предок) был удалён методом removeNode() и pathName не является пустой строкой ("").

removeNode

public abstract void removeNode() throws BackingStoreException
Удаляет этот узел настроек и все его потомки, аннулируя любые настройки, содержащиеся в удалённых узлах. После удаления узла, попытка любого метода, кроме name(), absolutePath(), isUserNode(), flush() или nodeExists("") на соответствующем Preferences экземпляре, завершится сбоем с IllegalStateException. (Методы, определённые в Object, всё ещё могут быть вызваны на узле после его удаления; они не будут бросать IllegalStateException.)

Удаление не гарантируется до тех пор, пока метод flush не будет вызван на этом узле (или на предке).

Если реализация поддерживает сохранённые значения по умолчанию, то удаление узла раскрывает любые сохранённые значения по умолчанию в этом узле или ниже. Таким образом, последующий вызов nodeExists на имени пути этого узла может вернуть true, а последующий вызов node на этом имени пути может вернуть (другой) Preferences экземпляр, представляющий собой непустой набор настроек и/или дочерних узлов.

Бросает:
BackingStoreException - если данная операция не может быть завершена из-за сбоя в хранилище или невозможности с ним связаться.
IllegalStateException - если этот узел (или какой-либо его предок) уже был удалён методом removeNode().
UnsupportedOperationException - если этот метод вызван на корневом узле.
См. также:
  • flush()

name

public abstract String name()
Возвращает имя этого узла настроек, относительно его родителя.
Возвращает:
имя этого узла настроек, относительно его родителя.

absolutePath

public abstract String absolutePath()
Возвращает абсолютное имя пути этого узла настроек.
Возвращает:
абсолютное имя пути этого узла настроек.

isUserNode

public abstract boolean isUserNode()
Возвращает true если этот узел настроек находится в дереве пользовательских настроек, false если он находится в дереве системных настроек.
Возвращает:
true если этот узел настроек находится в дереве пользовательских настроек, false если он находится в дереве системных настроек.

toString

public abstract String toString()
Возвращает строковое представление этого узла настроек, как если бы оно было вычислено выражением:(this.isUserNode() ? "User" : "System") + " Preference Node: " + this.absolutePath().
Переопределяет:
toString в классе Object
Возвращает:
строковое представление объекта.

flush

public abstract void flush() throws BackingStoreException
Принудительно записывает все изменения в содержимом этого узла настроек и его потомков в постоянное хранилище. После успешного возврата этого метода, можно считать, что все изменения, внесённые в поддереве, укоренённом в этом узле до вызова метода, стали постоянными.

Реализации могут произвольно записывать изменения в постоянное хранилище в любое время. Им не нужно ждать вызова этого метода.

При вызове flush на только что созданном узле, он становится постоянным, как и любые предки (и потомки), которые ещё не стали постоянными. Однако, изменения значений настроек в предках не гарантируются, чтобы стать постоянными.

Если этот метод вызывается на узле, который был удалён методом removeNode(), flushSpi() вызывается на этом узле, но не на других.

Бросает:
BackingStoreException - если данная операция не может быть завершена из-за сбоя в хранилище или невозможности с ним связаться.
См. также:
  • sync()

sync

public abstract void sync() throws BackingStoreException
Обеспечивает, что все будущие чтения из этого узла настроек и его потомков отражают любые изменения, которые были внесены в постоянное хранилище (любым JVM) до вызова sync. Как побочный эффект, принудительно записывает все изменения в содержимом этого узла настроек и его потомков в постоянное хранилище, как если бы метод flush был вызван на этом узле.
Бросает:
BackingStoreException - если данная операция не может быть завершена из-за сбоя в хранилище или невозможности с ним связаться.
IllegalStateException - если этот узел (или какой-либо его предок) был удалён методом removeNode().
См. также:
  • flush()

addPreferenceChangeListener

public abstract void addPreferenceChangeListener(PreferenceChangeListener pcl)
Регистрирует указанный обработчик для получения событий изменения настроек для этого узла настроек. Событие изменения настроек генерируется, когда настройка добавляется в этот узел, удаляется из этого узла или когда изменяется значение, связанное с настройкой. (События изменения настроек не генерируются методом removeNode(), который генерирует событие изменения узла. События изменения настроек генерируются методом clear.)

Гарантируется, что события будут генерироваться только для изменений, сделанных в той же JVM, что и зарегистрированный обработчик, хотя некоторые реализации могут генерировать события для изменений, сделанных вне этой JVM. События могут генерироваться до того, как изменения станут постоянными. События не генерируются при модификации настроек в потомках этого узла; для получения таких событий вызывающий код должен зарегистрироваться у каждого потомка.

Parameters:
pcl - Обработчик изменений настроек для добавления.
Throws:
NullPointerException - если pcl равно null.
IllegalStateException - если этот узел (или его предшественник) был удалён методом removeNode().
See Also:
  • removePreferenceChangeListener(PreferenceChangeListener)
  • addNodeChangeListener(NodeChangeListener)

removePreferenceChangeListener

public abstract void removePreferenceChangeListener(PreferenceChangeListener pcl)
Удаляет указанный обработчик изменений настроек, чтобы он больше не получал события изменения настроек.
Parameters:
pcl - Обработчик изменений настроек для удаления.
Throws:
IllegalArgumentException - если pcl не был зарегистрированным обработчиком изменений настроек в этом узле.
IllegalStateException - если этот узел (или его предшественник) был удалён методом removeNode().
See Also:
  • addPreferenceChangeListener(PreferenceChangeListener)

addNodeChangeListener

public abstract void addNodeChangeListener(NodeChangeListener ncl)
Регистрирует указанный обработчик для получения событий изменения узла для этого узла. Событие изменения узла генерируется при добавлении или удалении дочернего узла из этого узла. (Один вызов removeNode() приводит к нескольким событиям изменения узла, по одному для каждого узла в поддереве, корень которого удалён.)

Гарантируется, что события будут генерироваться только для изменений, сделанных в той же JVM, что и зарегистрированный обработчик, хотя некоторые реализации могут генерировать события для изменений, сделанных вне этой JVM. События могут генерироваться до того, как изменения станут постоянными. События не генерируются при добавлении или удалении косвенных потомков этого узла; для получения таких событий вызывающий код должен зарегистрироваться у каждого потомка.

Невозможно дать гарантии относительно создания узлов. Поскольку узлы создаются неявно при доступе, для реализации может быть невозможным определить, существовал ли дочерний узел в исходном хранилище до доступа (например, потому что исходное хранилище недоступно или кэшированная информация устарела). В таких случаях реализации не обязаны генерировать события изменения узла и не запрещается их генерировать.

Parameters:
ncl - Обработчик NodeChangeListener для добавления.
Throws:
NullPointerException - если ncl равно null.
IllegalStateException - если этот узел (или его предшественник) был удалён методом removeNode().
See Also:
  • removeNodeChangeListener(NodeChangeListener)
  • addPreferenceChangeListener(PreferenceChangeListener)

removeNodeChangeListener

public abstract void removeNodeChangeListener(NodeChangeListener ncl)
Удаляет указанный обработчик NodeChangeListener, чтобы он больше не получал события изменения.
Parameters:
ncl - Обработчик NodeChangeListener для удаления.
Throws:
IllegalArgumentException - если ncl не был зарегистрированным обработчиком NodeChangeListener в этом узле.
IllegalStateException - если этот узел (или его предшественник) был удалён методом removeNode().
See Also:
  • addNodeChangeListener(NodeChangeListener)

exportNode

public abstract void exportNode(OutputStream os) throws IOException, BackingStoreException
Выводит в указанный поток вывода XML-документ, представляющий все настройки, содержащиеся в этом узле (но не в его потомках). Этот XML-документ фактически является автономной резервной копией узла.

XML-документ будет иметь следующее объявление DOCTYPE:


 <!DOCTYPE preferences SYSTEM "http://java.sun.com/dtd/preferences.dtd">
 
Будет использовано кодирование UTF-8.

Этот метод является исключением из общего правила, что результаты одновременного выполнения нескольких методов в этом классе эквивалентны некоторому последовательному выполнению. Если настройки в этом узле изменяются одновременно с вызовом этого метода, экспортированные настройки представляют собой "размытый снимок" настроек, содержащихся в узле; некоторые из одновременных модификаций могут быть отражены в экспортированных данных, а другие — нет.

Parameters:
os - поток вывода, в который выводить XML-документ.
Throws:
IOException - если запись в указанный поток вывода приводит к IOException.
BackingStoreException - если данные настроек не могут быть считаны из хранилища.
IllegalStateException - если этот узел (или его предшественник) был удалён методом removeNode().
See Also:
  • importPreferences(InputStream)

exportSubtree

public abstract void exportSubtree(OutputStream os) throws IOException, BackingStoreException
Выводит XML-документ, представляющий все настройки, содержащиеся в этом узле и во всех его потомках. Этот XML-документ фактически является автономной резервной копией поддерева, укоренённого в узле.

XML-документ будет иметь следующее объявление DOCTYPE:


 <!DOCTYPE preferences SYSTEM "http://java.sun.com/dtd/preferences.dtd">
 
Будет использовано кодирование UTF-8.

Этот метод является исключением из общего правила, что результаты одновременного выполнения нескольких методов в этом классе эквивалентны некоторому последовательному выполнению. Если настройки или узлы в поддереве, укоренённом в этом узле, изменяются одновременно с вызовом этого метода, экспортированные настройки представляют собой "размытый снимок" поддерева; некоторые из одновременных модификаций могут быть отражены в экспортированных данных, а другие — нет.

Parameters:
os - поток вывода, в который выводить XML-документ.
Throws:
IOException - если запись в указанный поток вывода приводит к IOException.
BackingStoreException - если данные настроек не могут быть считаны из хранилища.
IllegalStateException - если этот узел (или его предшественник) был удалён методом removeNode().
See Also:
  • importPreferences(InputStream)
  • exportNode(OutputStream)

importPreferences

public static void importPreferences(InputStream is) throws IOException, InvalidPreferencesFormatException
Импортирует все настройки, представленные XML-документом в указанном потоке ввода. Документ может представлять настройки пользователя или системные настройки. Если он представляет настройки пользователя, настройки будут импортированы в дерево настроек вызывающего пользователя (даже если они изначально были из дерева настроек другого пользователя). Если какие-либо из настроек, описанных в документе, находятся в узлах настроек, которых нет, узлы будут созданы.

XML-документ должен иметь следующее объявление DOCTYPE:


 <!DOCTYPE preferences SYSTEM "http://java.sun.com/dtd/preferences.dtd">
 
(Этот метод предназначен для совместного использования с exportNode(OutputStream) и exportSubtree(OutputStream).

Этот метод является исключением из общего правила, что результаты одновременного выполнения нескольких методов в этом классе эквивалентны некоторому последовательному выполнению. Метод ведет себя так, как если бы он был реализован на основе других публичных методов этого класса, в частности, node(String) и put(String, String).

Parameters:
is - поток ввода, из которого читать XML-документ.
Throws:
IOException - если чтение из указанного потока ввода приводит к IOException.
InvalidPreferencesFormatException - Данные в потоке ввода не являются допустимым XML-документом с требуемым типом документа.
SecurityException - Если менеджер безопасности присутствует и отказывается от RuntimePermission("preferences").
See Also:
  • RuntimePermission

© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.prefs/java/util/prefs/Preferences.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API