Spec-Zone.ru › OpenJDK 25

Интерфейс AttributeSet

Все известные подинтерфейсы:
DocAttributeSet, PrintJobAttributeSet, PrintRequestAttributeSet, PrintServiceAttributeSet
Все известные реализующие классы:
HashAttributeSet, HashDocAttributeSet, HashPrintJobAttributeSet, HashPrintRequestAttributeSet, HashPrintServiceAttributeSet
public interface AttributeSet
Интерфейс AttributeSet определяет интерфейс набора печатных атрибутов. Печатный атрибут — это объект, класс которого реализует интерфейс Attribute.

Набор атрибутов содержит группу значений атрибутов, причем дублирующиеся значения в наборе не допускаются. Кроме того, каждое значение в наборе атрибутов принадлежит некоторой категории, и в наборе допускается не более одного значения каждой конкретной категории. В наборе атрибутов значения являются объектами Attribute, а категории — объектами Class. Категория атрибута — это класс (или интерфейс), находящийся в корне иерархии классов для данного типа атрибута. Обратите внимание, что категория объекта атрибута может быть суперклассом класса объекта атрибута, а не самим классом объекта атрибута. Категория объекта атрибута определяется вызовом метода getCategory(), объявленного в интерфейсе Attribute.

Интерфейсы AttributeSet напоминают интерфейсы java.util.Map из Java Collections API, но более ограничительны в отношении принимаемых типов и объединяют ключи и значения в Attribute.

Наборы атрибутов используются в нескольких местах Print Service API. В каждом контексте в наборе атрибутов могут присутствовать только определенные типы атрибутов, что определяется интерфейсами-маркерами, реализуемыми классом атрибута: DocAttribute, PrintRequestAttribute, PrintJobAttribute и PrintServiceAttribute. Существуют четыре специализации набора атрибутов, ограниченные содержанием только одного из четырех типов атрибутов: соответственно, DocAttributeSet, PrintRequestAttributeSet, PrintJobAttributeSet и PrintServiceAttributeSet. Обратите внимание, что многие классы атрибутов реализуют несколько интерфейсов-маркеров и поэтому могут использоваться в нескольких контекстах.

  • DocAttributeSet, содержащий атрибуты DocAttribute, задает характеристики отдельного документа и параметры задания печати, применяемые к отдельному документу.
  • PrintRequestAttributeSet, содержащий атрибуты PrintRequestAttribute, задает параметры, применяемые ко всему заданию печати и ко всем документам в задании печати.
  • PrintJobAttributeSet, содержащий атрибуты PrintJobAttribute, сообщает о состоянии задания печати.
  • PrintServiceAttributeSet, содержащий атрибуты PrintServiceAttribute, сообщает о состоянии экземпляра службы печати.
В некоторых контекстах клиенту разрешено только просматривать содержимое набора атрибутов, но не изменять его (набор доступен только для чтения). В других случаях клиенту разрешено как просматривать, так и изменять содержимое набора атрибутов (набор доступен для чтения и записи). Для набора атрибутов, доступного только для чтения, вызов операции изменения приводит к возникновению UnmodifiableSetException.

Print Service API предоставляет одну реализацию интерфейса AttributeSet — класс HashAttributeSet. Клиент может использовать класс HashAttributeSet или предоставить собственную реализацию интерфейса AttributeSet. Print Service API также предоставляет реализации подинтерфейсов интерфейса AttributeSet: классы HashDocAttributeSet, HashPrintRequestAttributeSet, HashPrintJobAttributeSet и HashPrintServiceAttributeSet.

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

Модификатор и тип Метод Описание
boolean add(Attribute attribute)
Добавляет указанный атрибут в этот набор атрибутов, если он еще не присутствует, предварительно удаляя существующее значение той же категории атрибутов, что и указанное значение атрибута.
boolean addAll(AttributeSet attributes)
Добавляет все элементы указанного набора к этому набору атрибутов.
void clear()
Удаляет все атрибуты из этого набора атрибутов.
boolean containsKey(Class<?> category)
Возвращает true, если этот набор атрибутов содержит атрибут указанной категории.
boolean containsValue(Attribute attribute)
Возвращает true, если этот набор атрибутов содержит указанное значение атрибута.
boolean equals(Object object)
Сравнивает указанный объект с этим набором атрибутов на равенство.
Attribute get(Class<?> category)
Возвращает значение атрибута, которое содержится в этом наборе атрибутов для указанной категории атрибутов.
int hashCode()
Возвращает хеш-код этого набора атрибутов.
boolean isEmpty()
Возвращает true, если этот набор атрибутов не содержит атрибутов.
boolean remove(Class<?> category)
Удаляет из этого набора атрибутов атрибут указанной категории, если он присутствует.
boolean remove(Attribute attribute)
Удаляет указанный атрибут из этого набора атрибутов, если он присутствует.
int size()
Возвращает количество атрибутов в этом наборе атрибутов.
Attribute[] toArray()
Возвращает массив атрибутов, содержащихся в этом наборе.

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

get

Attribute get(Class<?> category)
Возвращает значение атрибута, которое содержится в этом наборе атрибутов для указанной категории атрибутов. Возвращает null, если этот набор атрибутов не содержит значений атрибутов указанной категории.
Параметры:
category — категория атрибута, значение которого требуется вернуть. Это должен быть Class, реализующий интерфейс Attribute.
Возвращает:
значение атрибута указанной категории, содержащееся в этом наборе атрибутов, или null, если этот набор атрибутов не содержит значений атрибутов указанной категории
Вызывает:
NullPointerException — если category равно null
ClassCastException — если category не является Class, реализующим интерфейс Attribute

add

boolean add(Attribute attribute)
Добавляет указанный атрибут в этот набор атрибутов, если он еще не присутствует, предварительно удаляя существующее значение той же категории атрибутов, что и указанное значение атрибута.
Параметры:
attribute — значение атрибута, добавляемое в этот набор атрибутов
Возвращает:
true, если в результате вызова этот набор атрибутов изменился, то есть указанное значение атрибута еще не было элементом этого набора атрибутов
Вызывает:
NullPointerException — если attribute равно null
UnmodifiableSetException — если этот набор атрибутов не поддерживает операцию add()

remove

boolean remove(Class<?> category)
Удаляет из этого набора атрибутов атрибут указанной категории, если он присутствует. Если category равно null, то remove() ничего не делает и возвращает false.
Параметры:
category — категория атрибута, удаляемого из этого набора атрибутов
Возвращает:
true, если в результате вызова этот набор атрибутов изменился, то есть указанное значение атрибута было элементом этого набора атрибутов
Вызывает:
UnmodifiableSetException — если этот набор атрибутов не поддерживает операцию remove()

remove

boolean remove(Attribute attribute)
Удаляет указанный атрибут из этого набора атрибутов, если он присутствует. Если attribute равно null, то remove() ничего не делает и возвращает false.
Параметры:
attribute — значение атрибута, удаляемое из этого набора атрибутов
Возвращает:
true, если в результате вызова этот набор атрибутов изменился, то есть указанное значение атрибута было элементом этого набора атрибутов
Вызывает:
UnmodifiableSetException — если этот набор атрибутов не поддерживает операцию remove()

containsKey

boolean containsKey(Class<?> category)
Возвращает true, если этот набор атрибутов содержит атрибут указанной категории.
Параметры:
category — категория, наличие которой в этом наборе атрибутов требуется проверить
Возвращает:
true, если этот набор атрибутов содержит значение атрибута указанной категории

containsValue

boolean containsValue(Attribute attribute)
Возвращает true, если этот набор атрибутов содержит указанное значение атрибута.
Параметры:
attribute — значение атрибута, наличие которого в этом наборе атрибутов требуется проверить
Возвращает:
true, если этот набор атрибутов содержит указанное значение атрибута

addAll

boolean addAll(AttributeSet attributes)
Добавляет все элементы указанного набора к этому набору атрибутов. Результат такой же, как если бы операция add(Attribute) последовательно применялась к этому набору атрибутов для каждого элемента указанного набора. Поведение операции addAll(AttributeSet) не определено, если указанный набор изменяется во время выполнения операции.

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

Параметры:
attributes — набор, элементы которого требуется добавить в этот набор атрибутов
Возвращает:
true, если в результате вызова этот набор атрибутов изменился
Вызывает:
UnmodifiableSetException — если этот набор атрибутов не поддерживает метод addAll(AttributeSet)
NullPointerException — если какой-либо элемент указанного набора равен null
См. также:
  • add(Attribute)

size

int size()
Возвращает количество атрибутов в этом наборе атрибутов. Если этот набор атрибутов содержит более Integer.MAX_VALUE элементов, возвращает Integer.MAX_VALUE.
Возвращает:
количество атрибутов в этом наборе атрибутов

toArray

Attribute[] toArray()
Возвращает массив атрибутов, содержащихся в этом наборе.
Возвращает:
содержащиеся в этом наборе Attributes в виде массива; пустой массив, если AttributeSet пуст

clear

void clear()
Удаляет все атрибуты из этого набора атрибутов.
Вызывает:
UnmodifiableSetException — если этот набор атрибутов не поддерживает операцию clear()

isEmpty

boolean isEmpty()
Возвращает true, если этот набор атрибутов не содержит атрибутов.
Возвращает:
true, если этот набор атрибутов не содержит атрибутов

equals

boolean equals(Object object)
Сравнивает указанный объект с этим набором атрибутов на равенство. Возвращает true, если указанный объект также является набором атрибутов и оба набора атрибутов содержат одинаковые соответствия «категория атрибута — значение атрибута». Это гарантирует корректную работу метода equals() для различных реализаций интерфейса AttributeSet.
Переопределяет:
equals в классе Object
Параметры:
object — объект, сравниваемый на равенство с этим набором атрибутов
Возвращает:
true, если указанный объект равен этому набору атрибутов
См. также:
  • Object.hashCode()
  • HashMap

hashCode

int hashCode()
Возвращает хеш-код этого набора атрибутов. Хеш-код набора атрибутов определяется как сумма хеш-кодов каждой записи в AttributeSet. Это гарантирует, что t1.equals(t2) влечет за собой t1.hashCode()==t2.hashCode() для любых двух наборов атрибутов t1 и t2, как того требует общий контракт Object.hashCode().
Переопределяет:
hashCode в классе Object
Возвращает:
хеш-код этого набора атрибутов
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(Object)

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по 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.desktop/javax/print/attribute/AttributeSet.html

Spec-Zone.ru

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