JavaTM Platform
Standard Ed. 6

java.util.jar
类 Attributes

java.lang.Object
  继承者 java.util.jar.Attributes
所有已实现的接口:
Cloneable, Map<Object,Object>

public class Attributes
extends Object
implements Map<Object,Object>, Cloneable

Attributes 类将 Manifest 属性名称映射到关联的字符串值。有效的属性名称是区分大小写的,只能取 [0-9a-zA-Z_-] 集中的 ASCII 字符,且长度不能超过 70 个字符。属性值可以包含任意字符,当属性值被写入输出流时将进行 UTF8 编码。有关有效属性名称和值的更多信息,请参阅 JAR File Specification

从以下版本开始:
1.2
另请参见:
Manifest

嵌套类摘要
static class Attributes.Name
          Attributes.Name 类表示存储在此 Map 中的一个属性名称。
 
从接口 java.util.Map 继承的嵌套类/接口
Map.Entry<K,V>
 
字段摘要
protected  Map<Object,Object> map
          属性名称-值映射关系。
 
构造方法摘要
Attributes()
          构造具有默认大小的新的空 Attributes 对象。
Attributes(Attributes attr)
          构造新的 Attributes 对象,该对象与指定的 Attributes 具有相同的属性名称-值映射关系。
Attributes(int size)
          构造具有指定初始大小的新的空 Attributes 对象。
 
方法摘要
 void clear()
          从此 Map 中移除所有属性。
 Object clone()
          返回 Attributes 的副本,实现方法如下: public Object clone() { return new Attributes(this); } 由于属性名称和值本身不可变,因此可以安全地修改返回的 Attributes,而不会影响原始值。
 boolean containsKey(Object name)
          如果此 Map 包含指定的属性名称(键),则返回 true。
 boolean containsValue(Object value)
          如果此 Map 将一个或多个属性名称(键)映射到指定值,则返回 true
 Set<Map.Entry<Object,Object>> entrySet()
          返回此 Map 所包含的属性名称-值映射关系的 Collection 视图。
 boolean equals(Object o)
          将指定的 Attributes 对象与此 Map 进行相等性比较。
 Object get(Object name)
          返回指定的属性名称的值,如果未找到属性名称,则返回 null。
 String getValue(Attributes.Name name)
          返回指定的 Attributes.Name 的值,如果未找到,则返回 null。
 String getValue(String name)
          返回指定属性名称的值,如果未找到,则返回 null。
 int hashCode()
          返回此 Map 的哈希码值。
 boolean isEmpty()
          如果此 Map 不包含属性,则返回 true。
 Set<Object> keySet()
          返回此 Map 所包含的属性名称(键)的 Set 视图。
 Object put(Object name, Object value)
          在此 Map 中将指定的值关联到指定的属性名称(键)。
 void putAll(Map<?,?> attr)
          将所有的属性名称-值映射关系从指定的 Attributes 复制到此 Map。
 String putValue(String name, String value)
          将指定的值作为一个 String 关联到指定的属性名称。
 Object remove(Object name)
          从此 Map 中移除具有指定名称(键)的属性。
 int size()
          返回此 Map 中的属性数目。
 Collection<Object> values()
          返回此 Map 所包含的属性值的 Collection 视图。
 
从类 java.lang.Object 继承的方法
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

map

protected Map<Object,Object> map
属性名称-值映射关系。

构造方法详细信息

Attributes

public Attributes()
构造具有默认大小的新的空 Attributes 对象。


Attributes

public Attributes(int size)
构造具有指定初始大小的新的空 Attributes 对象。

参数:
size - 属性的初始数目

Attributes

public Attributes(Attributes attr)
构造新的 Attributes 对象,该对象与指定的 Attributes 具有相同的属性名称-值映射关系。

参数:
attr - 指定的 Attributes
方法详细信息

get

public Object get(Object name)
返回指定的属性名称的值,如果未找到属性名称,则返回 null。

指定者:
接口 Map<Object,Object> 中的 get
参数:
name - 属性名称
返回:
指定属性名称的值,如果未找到,则返回 null。

getValue

public String getValue(String name)
返回指定属性名称的值,如果未找到,则返回 null。属性名称是区分大小写的。

此方法定义如下:

            return (String)get(new Attributes.Name((String)name));
 

参数:
name - 作为字符串的属性名称
返回:
指定属性名称的 String 值,如果未找到,则返回 null。
抛出:
IllegalArgumentException - 如果属性名称无效

getValue

public String getValue(Attributes.Name name)
返回指定的 Attributes.Name 的值,如果未找到,则返回 null。

此方法定义如下:

     return (String)get(name);
 

参数:
name - Attributes.Name 对象
返回:
指定的 Attribute.Name 的 String 值,如果未找到,则返回 null。

put

public Object put(Object name,
                  Object value)
在此 Map 中将指定的值关联到指定的属性名称(键)。如果此 Map 以前包含了属性名称的映射关系,则旧值将被替换。

指定者:
接口 Map<Object,Object> 中的 put
参数:
name - 属性名称
value - 属性值
返回:
以前的属性值;如果没有,则返回 null
抛出:
ClassCastException - 如果名称不是 Attributes.Name 或值不是一个 String

putValue

public String putValue(String name,
                       String value)
将指定的值作为一个 String 关联到指定的属性名称。属性名称是区分大小写的。如果此 Map 以前包含了属性名称的映射关系,则旧值将被替换。

此方法定义如下:

            return (String)put(new Attributes.Name(name), value);
 

参数:
name - 作为字符串的属性名称
value - 属性值
返回:
属性以前的值,如果没有,则返回 null
抛出:
IllegalArgumentException - 如果属性名称是无效的

remove

public Object remove(Object name)
从此 Map 中移除具有指定名称(键)的属性。返回以前的属性值;如果没有,则返回 null。

指定者:
接口 Map<Object,Object> 中的 remove
参数:
name - 属性名称
返回:
属性以前的值;如果没有,则返回 null

containsValue

public boolean containsValue(Object value)
如果此 Map 将一个或多个属性名称(键)映射到指定值,则返回 true

指定者:
接口 Map<Object,Object> 中的 containsValue
参数:
value - 属性值
返回:
如果此 Map 将一个或多个属性名称映射到指定值,则返回 true

containsKey

public boolean containsKey(Object name)
如果此 Map 包含指定的属性名称(键),则返回 true。

指定者:
接口 Map<Object,Object> 中的 containsKey
参数:
name - 属性名称
返回:
如果此 Map 包含指定的属性名称,则返回 true

putAll

public void putAll(Map<?,?> attr)
将所有的属性名称-值映射关系从指定的 Attributes 复制到此 Map。重复的映射关系将被替换。

指定者:
接口 Map<Object,Object> 中的 putAll
参数:
attr - 要存储到此映射中的 Attributes
抛出:
ClassCastException - 如果 attr 不是一个 Attributes

clear

public void clear()
从此 Map 中移除所有属性。

指定者:
接口 Map<Object,Object> 中的 clear

size

public int size()
返回此 Map 中的属性数目。

指定者:
接口 Map<Object,Object> 中的 size
返回:
此映射中的键-值映射关系数

isEmpty

public boolean isEmpty()
如果此 Map 不包含属性,则返回 true。

指定者:
接口 Map<Object,Object> 中的 isEmpty
返回:
如果此映射未包含键-值映射关系,则返回 true

keySet

public Set<Object> keySet()
返回此 Map 所包含的属性名称(键)的 Set 视图。

指定者:
接口 Map<Object,Object> 中的 keySet
返回:
此映射中包含的键的 set 视图

values

public Collection<Object> values()
返回此 Map 所包含的属性值的 Collection 视图。

指定者:
接口 Map<Object,Object> 中的 values
返回:
此映射中包含的值的 collection 视图

entrySet

public Set<Map.Entry<Object,Object>> entrySet()
返回此 Map 所包含的属性名称-值映射关系的 Collection 视图。

指定者:
接口 Map<Object,Object> 中的 entrySet
返回:
此映射中包含的映射关系的 set 视图

equals

public boolean equals(Object o)
将指定的 Attributes 对象与此 Map 进行相等性比较。如果给定对象也是 Attributes 的实例,且两个 Attributes 对象表示相同的映射关系,则返回 true。

指定者:
接口 Map<Object,Object> 中的 equals
覆盖:
Object 中的 equals
参数:
o - 要比较的 Object
返回:
如果指定的 Object 与此 Map 相等,则返回 true
另请参见:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
返回此 Map 的哈希码值。

指定者:
接口 Map<Object,Object> 中的 hashCode
覆盖:
Object 中的 hashCode
返回:
此对象的一个哈希码值。
另请参见:
Object.equals(java.lang.Object), Hashtable

clone

public Object clone()
返回 Attributes 的副本,实现方法如下:
     public Object clone() { return new Attributes(this); }
 
由于属性名称和值本身不可变,因此可以安全地修改返回的 Attributes,而不会影响原始值。

覆盖:
Object 中的 clone
返回:
此实例的一个副本。
另请参见:
Cloneable

JavaTM Platform
Standard Ed. 6

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策