Интерфейс AttributeSet
- Все известные подинтерфейсы:
- DocAttributeSet, PrintJobAttributeSet, PrintRequestAttributeSet, PrintServiceAttributeSet
- Все известные реализующие классы:
- HashAttributeSet, HashDocAttributeSet, HashPrintJobAttributeSet, HashPrintRequestAttributeSet, HashPrintServiceAttributeSet
public interface AttributeSet
Интерфейс AttributeSet определяет интерфейс для набора атрибутов печати. Атрибут печати — это объект, класс которого реализует интерфейс Attribute.
Набор атрибутов содержит группу значений атрибутов, где дублируемые значения не допускаются в наборе. Кроме того, каждое значение в наборе атрибутов является членом какой-либо категории, и в наборе разрешено не более одного значения в каждой конкретной категории. Для набора атрибутов значения являются объектами Attribute, а категории — объектами Class. Категория атрибута — это класс (или интерфейс) в корне иерархии классов для данного типа атрибута. Обратите внимание, что категория объекта атрибута может быть суперклассом класса объекта атрибута, а не самим классом объекта атрибута. Категория объекта атрибута определяется вызовом метода getCategory(), определенного в интерфейсе Attribute.
Интерфейсы набора атрибутов напоминают интерфейс java.util.Map из Java Collections API, но более ограничены в типах, которые он будет принимать, и объединяет ключи и значения в атрибут.
Наборы атрибутов используются в нескольких местах в API службы печати. В каждом контексте разрешается только определенный тип атрибутов, отображаемый в наборе атрибутов, как определяется интерфейсами тегов, которые реализует класс атрибута — DocAttribute, PrintRequestAttribute, PrintJobAttribute и PrintServiceAttribute. Существуют четыре специализации набора атрибутов, которые ограничены включением только одного из четырех типов атрибутов — DocAttributeSet, PrintRequestAttributeSet, PrintJobAttributeSet и PrintServiceAttributeSet соответственно. Обратите внимание, что многие классы атрибутов реализуют более одного интерфейса тегов и поэтому могут отображаться в более чем одном контексте.
-
DocAttributeSet, содержащийDocAttributes, определяет характеристики отдельного документа и параметры печати, которые должны применяться к отдельным документам. -
PrintRequestAttributeSet, содержащийPrintRequestAttributes, определяет параметры, которые должны применяться ко всему документу и ко всем документам в задании печати. -
PrintJobAttributeSet, содержащийPrintJobAttributes, сообщает о состоянии задания печати. -
PrintServiceAttributeSet, содержащийPrintServiceAttributes, сообщает о состоянии экземпляра службы печати.
В некоторых контекстах клиенту разрешается только просматривать содержимое набора атрибутов, но не изменять его (набор является только для чтения). В других местах клиенту разрешается как просматривать, так и изменять содержимое набора атрибутов (набор является читаемым и изменяемым). Для набора атрибутов только для чтения вызов операции изменения вызывает исключение UnmodifiableSetException.
API службы печати предоставляет одну реализацию интерфейса AttributeSet, класс HashAttributeSet. Клиент может использовать класс HashAttributeSet или предоставить собственную реализацию интерфейса AttributeSet. API службы печати также предоставляет реализации подинтерфейсов интерфейса AttributeSet — классы HashDocAttributeSet, HashPrintRequestAttributeSet, HashPrintJobAttributeSet и HashPrintServiceAttributeSet.
Методы
| Модификатор и тип | Метод и описание |
|---|---|
boolean |
add(Attribute attribute) Добавляет указанный атрибут в этот набор атрибутов, если он еще не присутствует, сначала удалив любое существующее значение в той же категории атрибутов, что и указанное значение атрибута. |
boolean |
addAll(AttributeSet attributes) Добавляет все элементы из указанного набора в этот атрибут. |
void |
clear() Удаляет все атрибуты из этого набора атрибутов. |
boolean |
containsKey(Class<?> category) Возвращает |
boolean |
containsValue(Attribute attribute) Возвращает |
boolean |
equals(Object object) Сравнивает указанный объект с этим набором атрибутов на равенство. |
Attribute |
get(Class<?> category) Возвращает значение атрибута, содержащегося в этом наборе атрибутов в заданной категории атрибутов. |
int |
hashCode() Возвращает значение хэш-кода для этого набора атрибутов. |
boolean |
isEmpty() Возвращает true, если этот набор атрибутов не содержит атрибутов. |
boolean |
remove(Attribute attribute) Удаляет указанный атрибут из этого набора атрибутов, если он присутствует. |
boolean |
remove(Class<?> category) Удаляет любой атрибут для этой категории из этого набора атрибутов, если он присутствует. |
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()
Возвращает массив атрибутов, содержащихся в этом наборе.
- Возвращает:
- атрибуты, содержащиеся в этом наборе, в виде массива, пустой массив, если набор атрибутов пуст.
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(java.lang.Object)
© 1993, 2020, 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.