AbstractPreferences Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Этот класс обеспечивает скелетную реализацию Preferences класса, значительно упрощая задачу его реализации.
[Android.Runtime.Register("java/util/prefs/AbstractPreferences", DoNotGenerateAcw=true)]
public abstract class AbstractPreferences : Java.Util.Prefs.Preferences
[<Android.Runtime.Register("java/util/prefs/AbstractPreferences", DoNotGenerateAcw=true)>]
type AbstractPreferences = class
inherit Preferences
- Наследование
- Атрибуты
Комментарии
Этот класс обеспечивает скелетную реализацию Preferences класса, значительно упрощая задачу его реализации.
<strong>Этот класс предназначен только для Preferences разработчиков. Обычные Preferences пользователи объекта не должны обращаться к этой документации. Документация должна быть достаточной Preferences .</strong>
Реализующие должны переопределить девять абстрактных методов интерфейса поставщика услуг: #getSpi(String), #putSpi(String,String), #removeSpi(String), #childSpi(String), #removeNodeSpi()#keysSpi(), и #childrenNamesSpi(). #syncSpi()#flushSpi() Все конкретные методы указывают точно, как они реализуются на основе этих методов SPI. Разработчик может переопределить один или несколько конкретных методов, если реализация по умолчанию не является неудовлетворительной по какой-либо причине, например производительность.
Методы SPI делятся на три группы, касающиеся поведения исключений. Метод getSpi никогда не должен вызывать исключения, но это не имеет значения, так как любое исключение, вызываемое этим методом, будет перехвачено #get(String,String), что вернет указанное значение по умолчанию вызывающему объекту.
removeNodeSpi, keysSpi, childrenNamesSpi, syncSpi Методы flushSpi указываются для вызоваBackingStoreException, и реализация требуется для вызова этого проверенного исключения, если не удается выполнить операцию. Исключение распространяется наружу, что приводит к сбою соответствующего метода API.
Остальные методы #putSpi(String,String)#removeSpi(String) SPI и #childSpi(String) более сложное поведение исключений. Они не указываются, чтобы бросать BackingStoreException, так как они могут, как правило, подчиняться своим контрактам, даже если резервное хранилище недоступно. Это верно, поскольку они не возвращают информацию, и их последствия не требуются для того, чтобы стать постоянным до последующего вызова Preferences#flush() или Preferences#sync(). Как правило, эти методы SPI не должны вызывать исключения. В некоторых реализациях могут возникнуть обстоятельства, при которых эти вызовы даже не могут запросить запрошенную операцию для последующей обработки. Даже в этих обстоятельствах, как правило, лучше просто игнорировать вызов и возврат, а не вызывать исключение. Однако в этих обстоятельствах все последующие вызовы flush() и sync должны возвращаться false, так как возврат true будет означать, что все предыдущие операции успешно были созданы постоянно.
Существует одно из обстоятельств, при котором putSpi, removeSpi and childSpiследует вызвать исключение: если вызывающий не имеет достаточных привилегий в базовой операционной системе для выполнения запрошенной операции. Это, например, происходит в большинстве систем, если пользователь, не допускающий привилегий, пытается изменить системные предпочтения. (Требуемые привилегии будут отличаться от реализации к реализации. В некоторых реализациях они имеют право изменять содержимое определенного каталога в файловой системе; на других они имеют право изменять содержимое некоторых разделов в реестре.) В любом из этих обстоятельств, как правило, нежелательно позволить программе продолжать выполняться, как если бы эти операции стали постоянными в дальнейшем. Хотя реализации не требуются для создания исключения в этих обстоятельствах, им рекомендуется сделать это. Было SecurityException бы уместно.
Большинство методов SPI требуют реализации для чтения или записи сведений на узле параметров. Средство реализации должно помешать тому факту, что другая виртуальная машина может одновременно удалить этот узел из резервного хранилища. Реализация несет ответственность за повторное создание узла, если он был удален.
Примечание о реализации. В реализациях Sun по умолчанию Preferences удостоверение пользователя наследуется от базовой операционной системы и не изменяется на время существования виртуальной машины. Признается, что реализация на стороне Preferences сервера может изменить удостоверение пользователя от запроса к запросу, неявно передаваемое Preferences методам с помощью статического ThreadLocal экземпляра. Авторы таких реализаций настоятельно рекомендуется определить пользователя во время доступа к предпочтениям (например, по #get(String,String) методу), #put(String,String) а не постоянно связывать пользователя с каждым Preferences экземпляром. Последнее поведение конфликтует с обычным Preferences использованием и приведет к большой путанице.
Добавлено в версии 1.4.
Java документации по java.util.prefs.AbstractPreferences.
Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".
Конструкторы
| Имя | Описание |
|---|---|
| AbstractPreferences(AbstractPreferences, String) |
Создает узел предпочтения с указанным родительским и указанным именем относительно родительского элемента. |
| AbstractPreferences(IntPtr, JniHandleOwnership) |
Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения. |
Поля
| Имя | Описание |
|---|---|
| MaxKeyLength |
Максимальная длина строки, разрешенная в качестве ключа (80 символов). (Унаследовано от Preferences) |
| MaxNameLength |
Максимальная длина имени узла (80 символов). (Унаследовано от Preferences) |
| MaxValueLength |
Максимальная длина строки, разрешенная в качестве значения (8192 символов). (Унаследовано от Preferences) |
Свойства
| Имя | Описание |
|---|---|
| Class |
Возвращает класс среды выполнения этого |
| Handle |
Дескриптор базового экземпляра Android. (Унаследовано от Object) |
| IsRemoved |
Возвращает |
| IsUserNode |
|
| JniIdentityHashCode |
Возвращает хэш-код удостоверения, назначенный этому Java одноранговой среде выполнения взаимодействия. (Унаследовано от Object) |
| JniManagedPeerState |
Этот класс обеспечивает скелетную реализацию |
| JniPeerMembers |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. |
| Lock |
Объект, монитор которого используется для блокировки этого узла. |
| NewNode |
Это поле должно быть |
| PeerReference |
Возвращает ссылку на объект JNI для этого Java однорангового узла. (Унаследовано от Object) |
| ThresholdClass |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. |
| ThresholdType |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. |
Методы
| Имя | Описание |
|---|---|
| AbsolutePath() |
|
| AddNodeChangeListener(INodeChangeListener) |
|
| AddPreferenceChangeListener(IPreferenceChangeListener) |
|
| CachedChildren() |
Возвращает все известные дочерние элементы этого узла. |
| ChildrenNames() |
|
| ChildrenNamesSpi() |
Возвращает имена дочерних элементов этого узла предпочтения. |
| ChildSpi(String) |
Возвращает именованный дочерний узел этого предпочтительного узла, создав его, если он еще не существует. |
| Clear() |
|
| Clone() |
Создает и возвращает копию этого объекта. (Унаследовано от Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Этот класс обеспечивает скелетную реализацию |
| Dispose() |
Освобождает ресурсы, удерживаемые этим Java одноранговым узлом. (Унаследовано от Object) |
| Dispose(Boolean) |
Освобождает ресурсы, удерживаемые этим Java одноранговым узлом. (Унаследовано от Object) |
| DisposeUnlessReferenced() |
Этот класс обеспечивает скелетную реализацию |
| Equals(Object) |
Этот класс обеспечивает скелетную реализацию |
| Equals(Object) |
Указывает, равен ли другой объект этому объекту. (Унаследовано от Object) |
| ExportNode(Stream) |
|
| ExportNodeAsync(Stream) |
Асинхронно выдает XML-документ, представляющий все предпочтения, содержащиеся в этом узле, но не его потомки. (Унаследовано от Preferences) |
| ExportSubtree(Stream) |
|
| ExportSubtreeAsync(Stream) |
Асинхронно выдает XML-документ, представляющий все предпочтения, содержащиеся в этом узле, и все его потомки. (Унаследовано от Preferences) |
| Flush() |
|
| FlushAsync() |
Асинхронно заставляет все изменения в этом узле предпочтения и его потомках в постоянное хранилище. (Унаследовано от Preferences) |
| FlushSpi() |
Этот метод вызывается с заблокированным этим узлом. |
| Get(String, String) |
|
| GetBoolean(String, Boolean) |
|
| GetByteArray(String, Byte[]) |
|
| GetChild(String) |
Возвращает именованный дочерний элемент, если он существует, или |
| GetDouble(String, Double) |
|
| GetFloat(String, Single) |
|
| GetHashCode() |
Возвращает значение хэш-кода для объекта. (Унаследовано от Object) |
| GetInt(String, Int32) |
|
| GetLong(String, Int64) |
|
| GetSpi(String) |
Возвращает значение, связанное с указанным ключом на этом узле предпочтения, или если для этого ключа нет связи, или |
| JavaFinalize() |
Вызывается сборщиком мусора в объекте, когда сборка мусора определяет, что больше ссылок на объект нет. (Унаследовано от Object) |
| Keys() |
|
| KeysSpi() |
Возвращает все ключи, имеющие связанное значение в этом узле предпочтения. |
| Name() |
|
| Node(String) |
|
| NodeExists(String) |
|
| Notify() |
Пробуждение одного потока, ожидающего монитора этого объекта. (Унаследовано от Object) |
| NotifyAll() |
Просыпает все потоки, ожидающие монитора этого объекта. (Унаследовано от Object) |
| Parent() |
|
| Put(String, String) |
|
| PutBoolean(String, Boolean) |
|
| PutByteArray(String, Byte[]) |
|
| PutDouble(String, Double) |
|
| PutFloat(String, Single) |
|
| PutInt(String, Int32) |
|
| PutLong(String, Int64) |
|
| PutSpi(String, String) |
Поместите заданное сопоставление "ключ-значение" в этот узел предпочтения. |
| Remove(String) |
|
| RemoveNode() |
|
| RemoveNodeChangeListener(INodeChangeListener) |
Удаляет заданный |
| RemoveNodeSpi() |
Удаляет этот узел предпочтения, недействив его и все параметры, содержащиеся в нем. |
| RemovePreferenceChangeListener(IPreferenceChangeListener) |
Удаляет заданный |
| RemoveSpi(String) |
Удалите связь (при наличии) для указанного ключа на этом узле предпочтения. |
| SetHandle(IntPtr, JniHandleOwnership) |
Задает свойство Handle. (Унаследовано от Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Этот класс обеспечивает скелетную реализацию |
| Sync() |
|
| SyncAsync() |
Асинхронно синхронизирует этот узел предпочтения и его потомки с постоянным хранилищем. (Унаследовано от Preferences) |
| SyncSpi() |
Этот метод вызывается с заблокированным этим узлом. |
| ToArray<T>() |
Создает управляемый массив из этого Java оболочки массива. (Унаследовано от Object) |
| ToString() |
Возвращает строковое представление этого узла параметров. |
| UnregisterFromRuntime() |
Отменяет регистрацию этого Java однорангового узла из среды выполнения взаимодействия. (Унаследовано от Object) |
| Wait() |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>помощи уведомления</em> или <эм>прерванного</em>. (Унаследовано от Object) |
| Wait(Int64, Int32) |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени. (Унаследовано от Object) |
| Wait(Int64) |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени. (Унаследовано от Object) |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| IJavaPeerable.Disposed() |
Этот класс обеспечивает скелетную реализацию |
| IJavaPeerable.Finalized() |
Этот класс обеспечивает скелетную реализацию |
| IJavaPeerable.JniObjectReferenceControlBlock |
Этот класс обеспечивает скелетную реализацию |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Этот класс обеспечивает скелетную реализацию |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Этот класс обеспечивает скелетную реализацию |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Этот класс обеспечивает скелетную реализацию |
Методы расширения
| Имя | Описание |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Возвращает имя JNI типа экземпляра |
| JavaAs<TResult>(IJavaPeerable) |
Попробуйте принуждать к типу |
| JavaCast<TResult>(IJavaObject) |
Выполняет преобразование типа, проверяемого средой выполнения Android. |
| JavaCast<TResult>(IJavaObject) |
Этот класс обеспечивает скелетную реализацию |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Попробуйте принуждать к типу |