模块 java.base

类 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 个字符。名称后必须有一个冒号和一个空格;组合长度不会超过 72 个字符。属性值可以包含任何字符,并且在写入输出流时将采用 UTF8 编码。有关有效属性名称和值的更多信息,请参阅 JAR 文件规范

该map及其视图具有可预测的迭代顺序,即键插入map的顺序,与 LinkedHashMap 一样。

自从:
1.2
参见:
  • 字段详细信息

  • 构造方法详细信息

    • Attributes

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

      public Attributes(int size)
      构造一个具有指定初始大小的新的空 Attributes 对象。
      参数:
      size - 属性的初始数量
    • Attributes

      public Attributes(Attributes  attr)
      构造一个新的 Attributes 对象,该对象具有与指定 Attributes 中相同的属性名称-值映射。
      参数:
      attr - 指定的属性
  • 方法详情

    • get

      public Object  get(Object  name)
      返回指定属性名称的值,如果未找到属性名称,则返回 null。
      指定者:
      get 在接口 Map<Object,Object>
      参数:
      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 先前包含属性名称的映射,则旧值将被替换。
      指定者:
      put 在接口 Map<Object,Object>
      参数:
      name - 属性名称
      value - 属性值
      返回:
      属性的先前值,如果没有则为 null
      抛出:
      ClassCastException - 如果名称不是 Attributes.Name 或值不是 String
    • putValue

      public String  putValue(String  name, String  value)
      将指定的值与指定的属性名称相关联,指定为字符串。属性名称不区分大小写。如果 Map 先前包含属性名称的映射,则旧值将被替换。

      此方法定义为:

         return (String)put(new Attributes.Name(name), value);
       
      参数:
      name - 作为字符串的属性名称
      value - 属性值
      返回:
      属性的先前值,如果没有则为 null
      抛出:
      IllegalArgumentException - 如果属性名称无效
    • remove

      public Object  remove(Object  name)
      从此map中删除具有指定名称(键)的属性。返回先前的属性值,如果没有则返回 null。
      指定者:
      remove 在接口 Map<Object,Object>
      参数:
      name - 属性名称
      返回:
      属性的先前值,如果没有则为 null
    • containsValue

      public boolean containsValue(Object  value)
      如果此 Map 将一个或多个属性名称(键)映射到指定值,则返回 true。
      指定者:
      containsValue 在接口 Map<Object,Object>
      参数:
      value - 属性值
      返回:
      如果此 Map 将一个或多个属性名称映射到指定值,则为 true
    • containsKey

      public boolean containsKey(Object  name)
      如果此 Map 包含指定的属性名称(键),则返回 true。
      指定者:
      containsKey 在接口 Map<Object,Object>
      参数:
      name - 属性名称
      返回:
      如果此 Map 包含指定的属性名称,则为 true
    • putAll

      public void putAll(Map <?,?> attr)
      将指定属性中的所有属性名称-值映射复制到此map。重复的映射将被替换。
      指定者:
      putAll 在接口 Map<Object,Object>
      参数:
      attr - 要存储在此map中的属性
      抛出:
      ClassCastException - 如果 attr 不是属性
    • clear

      public void clear()
      从此map中删除所有属性。
      指定者:
      clear 在接口 Map<Object,Object>
    • size

      public int size()
      返回此 Map 中的属性数。
      指定者:
      size 在接口 Map<Object,Object>
      返回:
      此map中键值映射的数量
    • isEmpty

      public boolean isEmpty()
      如果此 Map 不包含任何属性,则返回 true。
      指定者:
      isEmpty 在接口 Map<Object,Object>
      返回:
      true 如果此map不包含键值映射
    • keySet

      public Set <Object > keySet()
      返回此 Map 中包含的属性名称(键)的 Set 视图。
      指定者:
      keySet 在接口 Map<Object,Object>
      返回:
      此map中包含的键的集合视图
    • values

      public Collection <Object > values()
      返回此 Map 中包含的属性值的 Collection 视图。
      指定者:
      values 在接口 Map<Object,Object>
      返回:
      此map中包含的值的集合视图
    • entrySet

      public Set <Map.Entry <Object ,Object >> entrySet()
      返回此 Map 中包含的属性名称-值映射的 Collection 视图。
      指定者:
      entrySet 在接口 Map<Object,Object>
      返回:
      此map中包含的映射的集合视图
    • equals

      public boolean equals(Object  o)
      比较指定对象与底层 map 是否相等。如果给定对象也是一个 Map 并且两个映射表示相同的映射,则返回 true。
      指定者:
      equals 在接口 Map<Object,Object>
      重写:
      equals 在类 Object
      参数:
      o - 要比较的对象
      返回:
      如果指定的 Object 等于此 Map,则为 true
      参见:
    • hashCode

      public int hashCode()
      返回此 Map 的哈希码值。
      指定者:
      hashCode 在接口 Map<Object,Object>
      重写:
      hashCode 在类 Object
      返回:
      此对象的哈希码值。
      参见:
    • clone

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