|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
javax.print.attribute
接口 AttributeSet
- 所有已知实现类:
- HashAttributeSet, HashDocAttributeSet, HashPrintJobAttributeSet, HashPrintRequestAttributeSet, HashPrintServiceAttributeSet
-
public interface AttributeSet
接口 AttributeSet 为打印属性集指定接口。打印属性是一个对象,其类实现接口 Attribute
。
属性集包含一组属性值,在该集合中,不允许出现重复值。此外,属性集中的每个值是某一类别 的成员,在该集合的任何特定类别中最多允许有一个值。对于某个属性集,值都是 Attribute
对象,类别都是 Class
对象。属性的类别是该类属性的类层次结构的根处的类(或接口)。注意,属性对象的类别可以是属性对象的类的超类,而不是属性对象的类本身。通过调用接口 Attribute
中定义的
方法确定属性对象的类别。getCategory()
AttributeSet 的接口与 Java Collections API 的 java.util.Map 的接口类似,但是对于它将要接受的类型有更强的限制性,并且将键和值组合到了属性中。
在 Print Service API 中,多处使用了属性集。在每个上下文中,只有某些属性(DocAttribute
、PrintRequestAttribute
、PrintJobAttribute
和 PrintServiceAttribute
)允许出现在属性集中,这由属性类实现的标记接口确定。一个属性集有四种规范,它们限于只能分别包含以下四种属性之一:DocAttributeSet
、PrintRequestAttributeSet
、PrintJobAttributeSet
和 PrintServiceAttributeSet
。注意,许多属性类会实现多个标记接口,因此可以出现在多个上下文中。
- 包含
DocAttribute
的DocAttributeSet
指定单个文档的特征和应用到单个文档的打印作业的设置。 - 包含
PrintRequestAttribute
的PrintRequestAttributeSet
指定应用到整个打印作业和打印作业中的所有文档的设置。 - 包含
PrintJobAttribute
的PrintJobAttributeSet
报告打印作业的状态。 - 包含
PrintServiceAttribute
的PrintServiceAttributeSet
报告 Print Service 实例的状态。
在某些上下文中,仅允许客户机检查属性集的内容,但不允许更改它们(该集合是只读的)。在其他地方,允许客户机检查和更改属性集的内容(该集合是可读写的)。对于只读属性集,调用更改操作会抛出一个 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(Attribute attribute) 从此属性集移除指定的属性(如果存在)。 |
boolean |
remove(Class<?> category) 从此属性集移除此类别的任何属性(如果存在)。 |
int |
size() 返回此属性集中属性的数量。 |
Attribute[] |
toArray() 返回此集合中包含的属性的数组。 |
方法详细信息 |
---|
get
Attribute get(Class<?> category)
- 返回此属性集在给定的属性类别中包含的属性值。如果此属性集在给定的属性类别中不包含任何属性值,则返回 null。
-
- 参数:
-
category
- 将返回其关联的属性值的属性类别。它必须是实现接口Attribute
的Class
。 - 返回:
- 此属性集中包含的给定属性类别中的属性值,如果此属性集在给定的属性类别中不包含任何属性值,则返回 null。
- 抛出:
-
NullPointerException
- (未经检查的异常)如果category
为 null,则抛出该异常。 -
ClassCastException
- (未经检查的异常)如果category
不是实现接口Attribute
的Class
,则抛出该异常。
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)