Spec-Zone.ru › OpenJDK 25

Класс 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

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

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)
Определяет, содержится ли значение в этом атрибуте.

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

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

add

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

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

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

remove

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

По умолчанию при сравнении attrVal со значениями этого атрибута используется Object.equals(), кроме случая, когда 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().
Возвращает:
Значение атрибута по индексу ix; может быть null. Если значение атрибута равно null, возвращается null.
Выбрасывает:
NamingException — если при получении значения возникло исключение именования.

remove

public Object remove(int ix)
Описание скопировано из интерфейса: Attribute
Удаляет значение атрибута из упорядоченного списка значений атрибута. Этот метод удаляет значение по индексу ix в списке значений атрибута. Если значения атрибута не упорядочены, метод удаляет значение, которое оказалось по этому индексу. Значения, расположенные по индексам больше ix, сдвигаются к началу списка (их индексы уменьшаются на единицу).
Определён в:
remove в интерфейсе Attribute
Параметры:
ix — индекс удаляемого значения. 0 <= ix < size().
Возвращает:
Удалённое значение атрибута по индексу ix; оно может быть null. Если значение атрибута равно 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'.
Возвращает:
Заменённое значение атрибута по индексу ix; оно может быть null. Если значение атрибута было 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, 2025, 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.naming/javax/naming/directory/BasicAttribute.html

Spec-Zone.ru

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