Module  java.naming

Class BasicAttributes

    • 构造方法详细信息

      • BasicAttributes

        public BasicAttributes​()
        构造一个新的属性实例。 随后检索或添加属性时,属性标识符的字符大小很重要。
      • BasicAttributes

        public BasicAttributes​(boolean ignoreCase)
        构造一个新的属性实例。 如果ignoreCase为真,属性标识符的字符大小写将被忽略; 否则情况重大。
        参数
        ignoreCase - true表示此属性集将在检索或添加属性时忽略其属性标识符的情况; 假意味着受到尊重。
      • BasicAttributes

        public BasicAttributes​(String attrID,
                               Object val)
        使用一个属性构造一个新的属性实例。 由attrID和val指定的属性将添加到新创建的属性中。 随后检索或添加属性时,属性标识符的字符大小很重要。
        参数
        attrID - non-null要添加的属性的id。
        val - 要添加的属性的值。 如果为null,则将null值添加到该属性。
      • BasicAttributes

        public BasicAttributes​(String attrID,
                               Object val,
                               boolean ignoreCase)
        使用一个属性构造一个新的属性实例。 由attrID和val指定的属性将添加到新创建的属性中。 如果ignoreCase为真,属性标识符的字符大小写将被忽略; 否则情况重大。
        参数
        attrID - non-null要添加的属性的id。 如果此属性集忽略其属性ID的字符大小写,则忽略attrID的情况。
        val - 要添加的属性的值。 如果为null,则将null值添加到该属性。
        ignoreCase - true表示此属性集在检索或添加属性时将忽略其属性标识符的情况; 假意味着受到尊重。
    • 方法详细信息

      • clone

        public Object clone​()
        描述从类复制: Object
        创建并返回此对象的副本。 “复制”的精确含义可能取决于对象的类。 一般意图是,对于任何对象x ,表达式:
         x.clone() != x
        将是真实的,而且表达:
         x.clone().getClass() == x.getClass()
        将是true ,但这些都不是绝对的要求。 通常情况是:
         x.clone().equals(x)
        将是true ,这不是一个绝对的要求。

        按照惯例,返回的对象应该通过调用super.clone 如果一个类及其所有的超类( Object除外)遵守这个惯例,那就是x.clone().getClass() == x.getClass()的情况。

        按照惯例,此方法返回的对象应该与此对象(正被克隆)无关。 为了实现这种独立性,可能需要修改super.clone返回的对象的一个或多个字段。 通常,这意味着复制构成被克隆的对象的内部“深层结构”的任何可变对象,并通过引用该副本替换对这些对象的引用。 如果类只包含原始字段或引用不可变对象,则通常情况下, super.clone返回的对象中的字段通常不需要修改。

        该方法cloneObject执行特定克隆操作。 首先,如果此对象的类不实现接口Cloneable ,则抛出一个CloneNotSupportedException 请注意,所有阵列被认为是实现该接口Cloneable并且所述的返回类型clone数组类型的方法T[]T[]其中T是任何引用或原始类型。 否则,该方法将创建该对象的类的新实例,并将其所有字段初始化为该对象的相应字段的内容,就像通过赋值一样。 这些字段的内容本身不被克隆。 因此,该方法执行该对象的“浅拷贝”,而不是“深度拷贝”操作。

        Object本身并不实现接口Cloneable ,因此在类为Object的对象上调用clone方法将导致在运行时抛出异常。

        Specified by:
        clone在接口 Attributes
        重写:
        cloneObject
        结果
        这个实例的一个克隆。
        另请参见:
        Cloneable
      • isCaseIgnored

        public boolean isCaseIgnored​()
        说明从界面Attributes复制
        确定属性集是否在检索或添加属性时忽略属性标识符的情况。
        Specified by:
        isCaseIgnored在接口 Attributes
        结果
        如果忽略,则为true; 否则为假。
      • size

        public int size​()
        描述从接口Attributes复制
        检索属性集中的属性数。
        Specified by:
        size在接口 Attributes
        结果
        此属性集中的非负数属性集。
      • getAll

        public NamingEnumeration<Attribute> getAll​()
        描述从接口Attributes复制
        检索属性集中属性的枚举。 在此枚举上设置的此属性的更新效果未定义。
        Specified by:
        getAll在接口 Attributes
        结果
        此属性集中属性的非空枚举。 枚举的每个元素都是类别Attribute 如果属性集具有零属性,则返回一个空的枚举。
      • getIDs

        public NamingEnumeration<String> getIDs​()
        说明从界面Attributes复制
        检索属性集中属性ID的枚举。 在此枚举上设置的此属性的更新效果未定义。
        Specified by:
        getIDs在接口 Attributes
        结果
        属性集中的属性ID的非空枚举。 枚举的每个元素都是String类。 如果属性集具有零属性,则返回一个空的枚举。
      • put

        public Attribute put​(String attrID,
                             Object val)
        描述从接口Attributes复制
        向属性集添加一个新属性。
        Specified by:
        put在接口 Attributes
        参数
        attrID - non-null要添加的属性的id。 如果属性集忽略其属性id的字符大小写,则忽略attrID的情况。
        val - 要添加的属性的可能的空值。 如果为null,则该属性不具有任何值。
        结果
        此属性集中以前的attrID属性; 如果不存在这样的属性,则为null。
        另请参见:
        Attributes.remove(java.lang.String)
      • put

        public Attribute put​(Attribute attr)
        描述从接口Attributes复制
        向属性集添加一个新属性。
        Specified by:
        put在接口 Attributes
        参数
        attr - 要添加的非空属性。 如果属性集忽略其属性ID的字符大小写,则忽略attr标识符的情况。
        结果
        与该属性集中以前的attr具有相同ID的属性; 如果不存在这样的属性,则为null。
        另请参见:
        Attributes.remove(java.lang.String)
      • remove

        public Attribute remove​(String attrID)
        说明从接口Attributes复制
        从属性集中删除属性id“attrID”的属性。 如果属性不存在,请忽略。
        Specified by:
        remove在接口 Attributes
        参数
        attrID - 要删除的属性的非空ID。 如果属性集忽略其属性id的字符大小写,则忽略attrID的情况。
        结果
        与属性集中以前的attrID具有相同ID的属性; 如果不存在这样的属性,则为null。
      • toString

        public String toString​()
        生成此属性集的字符串表示形式。 该字符串由每个属性标识符和每个属性的内容组成。 该字符串的内容对于调试很有用,不能以编程方式解释。
        重写:
        toStringObject
        结果
        列出此属性集的内容的非空字符串。
      • equals

        public boolean equals​(Object obj)
        确定这BasicAttributes是否等于另一个Attributes两个Attributes相同,如果它们都是Attributes实例, Attributes相同的方式处理属性ID的情况,并包含相同的属性。 每个Attribute在此BasicAttributes检查用于使用平等Object.equals() ,这可能通过实现覆盖Attribute )。 如果一个子类覆盖了equals() ,那么它也应该覆盖hashCode() ,以使两个相等的Attributes实例具有相同的哈希码。
        重写:
        equalsObject
        参数
        obj - 可能要比较的空对象。
        结果
        true如果obj等于此BasicAttributes。
        另请参见:
        hashCode()
      • hashCode

        public int hashCode​()
        计算此BasicAttributes的哈希码。

        通过添加该对象的属性的哈希码来计算哈希码。 如果此BasicAttributes忽略其属性ID的情况,则将一个添加到哈希码。 如果一个子类覆盖了hashCode() ,那么它也应该覆盖equals() ,以至于相等的两个Attributes实例具有相同的哈希码。

        重写:
        hashCodeObject
        结果
        一个表示此BasicAttributes实例的哈希码的int。
        另请参见:
        equals(java.lang.Object)