Spec-Zone.ru › OpenJDK 27

Класс BasicAttribute

java.lang.Object
javax.naming.directory.BasicAttribute
Все реализуемые интерфейсы:
Serializable, Cloneable, Attribute
public class BasicAttribute extends Object implements Attribute
Этот класс предоставляет базовую реализацию интерфейса Attribute.

Эта реализация не поддерживает методы схемы getAttributeDefinition() и getAttributeSyntaxDefinition(). Они просто выбрасывают OperationNotSupportedException. Подклассы BasicAttribute должны переопределить эти методы, если поддерживают их.

По умолчанию класс BasicAttribute использует Object.equals() для определения равенства значений атрибутов при проверке на равенство или поиске значений, за исключением случаев, когда значение является массивом. Для массива каждый его элемент проверяется с помощью Object.equals(). Подклассы BasicAttribute могут использовать информацию о схеме при выполнении подобных проверок на равенство, переопределяя методы, в которых такое использование схемы имеет смысл. Аналогичным образом, класс BasicAttribute по умолчанию возвращает значения, переданные его конструктору и/или изменённые с помощью методов добавления и удаления. Подклассы BasicAttribute могут переопределить get() и getAll(), чтобы получать значения из каталога динамически (или реализовать интерфейс Attribute напрямую, а не наследовать BasicAttribute).

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

Экземпляр BasicAttribute не синхронизирован для многопоточного конкурентного доступа. Потоки, пытающиеся одновременно обращаться к BasicAttribute и изменять его, должны блокировать объект.

Начиная с:
1.3
См. также:
  • Сериализованная форма

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

Модификатор и тип Поле Описание
protected String attrID
Содержит идентификатор атрибута.
protected boolean ordered
Флаг, указывающий, упорядочены ли значения этого атрибута.
protected Vector<Object> values
Содержит значения атрибута.

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

Конструктор Описание
BasicAttribute(String id)
Создаёт новый экземпляр неупорядоченного атрибута без значения.
BasicAttribute(String id, boolean ordered)
Создаёт новый экземпляр, возможно, упорядоченного атрибута без значения.
BasicAttribute(String id, Object value)
Создаёт новый экземпляр неупорядоченного атрибута с одним значением.
BasicAttribute(String id, Object value, boolean ordered)
Создаёт новый экземпляр, возможно, упорядоченного атрибута с одним значением.

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

Модификатор и тип Метод Описание
void add(int ix, Object attrVal)
Добавляет значение атрибута в упорядоченный список значений атрибута.
boolean add(Object attrVal)
Добавляет новое значение в этот атрибут.
void clear()
Удаляет все значения из этого атрибута.
Object clone()
Создаёт копию атрибута.
boolean contains(Object attrVal)
Определяет, содержится ли значение в этом атрибуте.
boolean equals(Object obj)
Определяет, равен ли obj этому атрибуту.
Object get()
Получает одно из значений этого атрибута.
Object get(int ix)
Получает значение атрибута из упорядоченного списка значений атрибута.
NamingEnumeration<?> getAll()
Получает перечисление значений этого атрибута.
DirContext getAttributeDefinition()
Получает определение схемы этого атрибута.
DirContext getAttributeSyntaxDefinition()
Получает определение синтаксиса, связанное с этим атрибутом.
String getID()
Получает идентификатор этого атрибута.
int hashCode()
Вычисляет хеш-код этого атрибута.
boolean isOrdered()
Определяет, упорядочены ли значения этого атрибута.
Object remove(int ix)
Удаляет значение атрибута из упорядоченного списка значений атрибута.
boolean remove(Object attrval)
Удаляет указанное значение из этого атрибута.
Object set(int ix, Object attrVal)
Задаёт значение атрибута в упорядоченном списке значений атрибута.
int size()
Получает количество значений в этом атрибуте.
String toString()
Создаёт строковое представление этого атрибута.

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

finalize, getClass, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация устарела и будет удалена в одном из следующих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания, либо до истечения определённого промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания, либо до истечения определённого промежутка реального времени.

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

attrID

protected String attrID
Содержит идентификатор атрибута. Инициализируется открытым конструктором и не может иметь значение null, если только методы BasicAttribute, использующие attrID, не были переопределены.

values

protected transient Vector<Object> values
Содержит значения атрибута. Инициализируется открытыми конструкторами. Не может иметь значение null, если только методы BasicAttribute, использующие values, не были переопределены.

ordered

protected boolean ordered
Флаг, указывающий, упорядочены ли значения этого атрибута.

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

BasicAttribute

public BasicAttribute(String id)
Создаёт новый экземпляр неупорядоченного атрибута без значения.
Параметры:
id — идентификатор атрибута. Не может иметь значение null.

BasicAttribute

public BasicAttribute(String id, Object value)
Создаёт новый экземпляр неупорядоченного атрибута с одним значением.
Параметры:
id — идентификатор атрибута. Не может иметь значение null.
value — значение атрибута. Если оно равно null, в атрибут добавляется значение null.

BasicAttribute

public BasicAttribute(String id, boolean ordered)
Создаёт новый экземпляр, возможно, упорядоченного атрибута без значения.
Параметры:
id — идентификатор атрибута. Не может иметь значение null.
ordered — true означает, что значения атрибута будут упорядочены; в противном случае — false.

BasicAttribute

public BasicAttribute(String id, Object value, boolean ordered)
Создаёт новый экземпляр, возможно, упорядоченного атрибута с одним значением.
Параметры:
id — идентификатор атрибута. Не может иметь значение null.
value — значение атрибута. Если оно равно null, в атрибут добавляется значение null.
ordered — true означает, что значения атрибута будут упорядочены; в противном случае — false.

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

clone

public Object clone()
Описание скопировано из интерфейса: Attribute
Создаёт копию атрибута. Копия содержит те же значения атрибутов, что и исходный атрибут: сами значения атрибутов не клонируются. Изменения копии не влияют на исходный объект и наоборот.
Определено в:
clone в интерфейсе Attribute
Переопределяет:
clone в классе Object
Возвращает:
Ненулевую копию атрибута.
См. также:
  • Cloneable

equals

public boolean equals(Object obj)
Определяет, равен ли obj этому атрибуту. Два атрибута равны, если их идентификаторы, синтаксисы и значения атрибутов совпадают. Если значения атрибутов не упорядочены, порядок их добавления не имеет значения. Если значения атрибутов упорядочены, их порядок должен совпадать. Если obj равен null или не является объектом Attribute, возвращается false.

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

Переопределяет:
equals в классе Object
Параметры:
obj — возможно, равный null объект для проверки.
Возвращает:
true, если obj равен этому атрибуту; в противном случае — false.
См. также:
  • hashCode()
  • contains(Object)

hashCode

public int hashCode()
Вычисляет хеш-код этого атрибута.

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

Переопределяет:
hashCode в классе Object
Возвращает:
значение типа int, представляющее хеш-код этого атрибута.
См. также:
  • equals(Object)

toString

public String toString()
Создаёт строковое представление этого атрибута. Строка состоит из идентификатора атрибута и его значений. Эта строка предназначена для отладки, а не для программной интерпретации.
Переопределяет:
toString в классе Object
Возвращает:
Ненулевое строковое представление этого атрибута.

getAll

public NamingEnumeration<?> getAll() throws NamingException
Получает перечисление значений этого атрибута.

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

Определено в:
getAll в интерфейсе Attribute
Возвращает:
Ненулевое перечисление значений атрибута. Каждый элемент перечисления — объект Object, который может быть равен null. Класс объекта соответствует классу значения атрибута. Элемент равен null, если значение атрибута равно null. Если у атрибута нет значений, возвращается пустое перечисление.
Выбрасывает:
NamingException — если при получении значений возникло исключение именования.
См. также:
  • Attribute.isOrdered()

get

public Object get() throws NamingException
Получает одно из значений этого атрибута.

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

Определено в:
get в интерфейсе Attribute
Возвращает:
Возможно, равный null объект, представляющий одно из значений атрибута. Он равен null, если значение атрибута равно null.
Выбрасывает:
NamingException — если при получении значения возникло исключение именования.

size

public int size()
Описание скопировано из интерфейса: Attribute
Получает количество значений в этом атрибуте.
Определено в:
size в интерфейсе Attribute
Возвращает:
Неотрицательное количество значений в этом атрибуте.

getID

public String getID()
Описание скопировано из интерфейса: Attribute
Получает идентификатор этого атрибута.
Определено в:
getID в интерфейсе Attribute
Возвращает:
Идентификатор этого атрибута. Не может иметь значение null.

contains

public boolean contains(Object attrVal)
Определяет, содержится ли значение в этом атрибуте.

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

Определено в:
contains в интерфейсе Attribute
Параметры:
attrVal — возможно, равное null значение для проверки. Если оно равно null, проверяется, есть ли у атрибута значение атрибута, равное null.
Возвращает:
true, если attrVal является одним из значений этого атрибута; в противном случае — false.
См. также:
  • Object.equals(Object)
  • equals(Object)

add

public boolean add(Object attrVal)
Добавляет новое значение в этот атрибут.

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

Определено в:
add в интерфейсе Attribute
Параметры:
attrVal — возможно, равное null новое значение для добавления. Если оно равно null, в качестве значения атрибута добавляется null.
Возвращает:
true, если значение было добавлено; в противном случае — false.

remove

public boolean remove(Object attrval)
Удаляет указанное значение из этого атрибута.

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

Определено в:
remove в интерфейсе Attribute
Параметры:
attrval — возможно, равное null значение для удаления из этого атрибута. Если оно равно null, удаляется значение атрибута, равное null.
Возвращает:
true, если значение было удалено; в противном случае — false.

clear

public void clear()
Описание скопировано из интерфейса: Attribute
Удаляет все значения из этого атрибута.
Определено в:
clear в интерфейсе Attribute

isOrdered

public boolean isOrdered()
Описание скопировано из интерфейса: Attribute
Определяет, упорядочены ли значения этого атрибута. Если значения атрибута упорядочены, допускаются повторяющиеся значения. Если значения атрибута не упорядочены, они представлены в произвольном порядке и не могут повторяться.
Определено в:
isOrdered в интерфейсе Attribute
Возвращает:
true, если значения этого атрибута упорядочены; в противном случае — false.
См. также:
  • Attribute.get(int)
  • Attribute.remove(int)
  • Attribute.add(int, java.lang.Object)
  • Attribute.set(int, java.lang.Object)

get

public Object get(int ix) throws NamingException
Описание скопировано из интерфейса: Attribute
Получает значение атрибута из упорядоченного списка значений атрибута. Этот метод возвращает значение по индексу ix в списке значений атрибута. Если значения атрибута не упорядочены, метод возвращает значение, которое оказалось на этом индексе.
Определено в:
get в интерфейсе Attribute
Параметры:
ix — индекс значения в упорядоченном списке значений атрибута. 0 <= ix < size().
Возвращает:
Возможно, равное null значение атрибута с индексом ix; null, если значение атрибута равно null.
Выбрасывает:
NamingException — если при получении значения возникло исключение именования.

remove

public Object remove(int ix)
Описание скопировано из интерфейса: Attribute
Удаляет значение атрибута из упорядоченного списка значений атрибута. Этот метод удаляет значение по индексу ix в списке значений атрибута. Если значения атрибута не упорядочены, метод удаляет значение, которое оказалось на этом индексе. Значения с индексами больше ix сдвигаются к началу списка (а их индексы уменьшаются на единицу).
Определено в:
remove в интерфейсе Attribute
Параметры:
ix — индекс значения для удаления. 0 <= ix < size().
Возвращает:
Возможно, равное null значение атрибута с индексом ix, которое было удалено; null, если значение атрибута равно null.

add

public void add(int ix, Object attrVal)
Описание скопировано из интерфейса: Attribute
Добавляет значение атрибута в упорядоченный список значений атрибута. Этот метод добавляет attrVal в список значений атрибута по индексу ix. Значения с индексами, равными ix или больше него, сдвигаются к концу списка (а их индексы увеличиваются на единицу). Если значения атрибута не упорядочены и уже содержат attrVal, выбрасывается IllegalStateException.
Определено в:
add в интерфейсе Attribute
Параметры:
ix — индекс в упорядоченном списке значений атрибута, по которому следует добавить новое значение. 0 <= ix <= size().
attrVal — возможно, равное null значение атрибута для добавления; если оно равно null, добавляемым значением будет null.

set

public Object set(int ix, Object attrVal)
Описание скопировано из интерфейса: Attribute
Задаёт значение атрибута в упорядоченном списке значений атрибута. Этот метод заменяет значение по индексу ix в списке значений атрибута на attrVal. Старое значение удаляется. Если значения атрибута не упорядочены, этот метод заменяет значение, оказавшееся на этом индексе, на attrVal, если только attrVal ещё не является одним из значений. В этом случае выбрасывается IllegalStateException.
Определено в:
set в интерфейсе Attribute
Параметры:
ix — индекс значения в упорядоченном списке значений атрибута. 0 <= ix < size().
attrVal — возможно, равное null значение атрибута для использования. Если оно равно null, старое значение заменяется на 'null'.
Возвращает:
Возможно, равное null значение атрибута с индексом ix, которое было заменено. Null, если значение атрибута было равно null.

getAttributeSyntaxDefinition

public DirContext getAttributeSyntaxDefinition() throws NamingException
Получает определение синтаксиса, связанное с этим атрибутом.

По умолчанию этот метод выбрасывает OperationNotSupportedException. Подклассу следует переопределить этот метод, если он поддерживает схемы.

Определено в:
getAttributeSyntaxDefinition в интерфейсе Attribute
Возвращает:
Определение синтаксиса атрибута. Null, если реализация поддерживает схемы, но для данного атрибута нет информации о схеме.
Выбрасывает:
OperationNotSupportedException — если получение схемы не поддерживается.
NamingException — если при получении схемы возникло исключение именования.

getAttributeDefinition

public DirContext getAttributeDefinition() throws NamingException
Получает определение схемы этого атрибута.

По умолчанию этот метод выбрасывает OperationNotSupportedException. Подклассу следует переопределить этот метод, если он поддерживает схемы.

Определено в:
getAttributeDefinition в интерфейсе Attribute
Возвращает:
Определение схемы этого атрибута. Null, если реализация поддерживает схемы, но для данного атрибута нет информации о схеме.
Выбрасывает:
OperationNotSupportedException — если получение схемы не поддерживается.
NamingException — если при получении схемы возникло исключение именования.

Сообщить об ошибке или предложить улучшение
Для получения дополнительной справочной информации по API и документации для разработчиков см. документацию Java SE, содержащую более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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.

Spec-Zone.ru

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