- 所有已实现的接口:
Serializable,Cloneable,Attributes
BasicAttributes 区分大小写或不区分大小写(忽略大小写)。此属性在调用 BasicAttributes 构造方法时确定。在不区分大小写的 BasicAttributes 中,在搜索属性或添加属性时忽略其属性标识符的大小写。在区分大小写的 BasicAttributes 中,大小写很重要。
当 BasicAttributes 类需要创建一个 Attribute 时,它使用 BasicAttribute。 BasicAttribute 没有其他依赖项。
请注意,对 BasicAttributes 的更新(例如添加或删除属性)不会影响目录中的相应表示。只能使用 DirContext 接口中的操作来更新目录。
BasicAttributes 实例与并发多线程访问不同步。尝试访问和修改单个 BasicAttributes 实例的多个线程应该锁定该对象。
- 自从:
- 1.3
- 参见:
-
构造方法总结
构造方法构造方法描述构造一个新的属性实例。BasicAttributes(boolean ignoreCase) 构造一个新的属性实例。BasicAttributes(String attrID, Object val) 构造具有一个属性的 Attributes 的新实例。BasicAttributes(String attrID, Object val, boolean ignoreCase) 构造具有一个属性的 Attributes 的新实例。 -
方法总结
修饰符和类型方法描述clone()创建并返回此对象的副本。boolean确定此BasicAttributes是否等于另一个Attributes如果两个Attributes都是Attributes的实例,则它们相等,以相同的方式处理属性 ID 的情况,并且包含相同的属性。从属性集中检索具有给定属性 id 的属性。getAll()检索属性集中属性的枚举。getIDs()检索属性集中属性 ID 的枚举。inthashCode()计算此 BasicAttributes 的哈希码。boolean确定属性集在检索或添加属性时是否忽略属性标识符的大小写。将新属性添加到属性集中。将新属性添加到属性集中。从属性集中删除属性 ID 为“attrID”的属性。intsize()检索属性集中的属性数。toString()生成此属性集的字符串表示形式。
-
构造方法详细信息
-
BasicAttributes
public BasicAttributes()构造一个新的属性实例。在随后检索或添加属性时,属性标识符的字符大小写很重要。 -
BasicAttributes
public BasicAttributes(boolean ignoreCase) 构造一个新的属性实例。如果ignoreCase为真,则忽略属性标识符的字符大小写;否则情况很重要。- 参数:
ignoreCase- true 表示此属性集在检索或添加属性时将忽略其属性标识符的大小写; false 表示尊重大小写。
-
BasicAttributes
构造具有一个属性的 Attributes 的新实例。将 attrID 和 val 指定的属性添加到新创建的属性中。在随后检索或添加属性时,属性标识符的字符大小写很重要。- 参数:
attrID- 非空 要添加的属性的 ID。val- 要添加的属性值。如果为空,则将空值添加到属性。
-
BasicAttributes
构造具有一个属性的 Attributes 的新实例。将 attrID 和 val 指定的属性添加到新创建的属性中。如果ignoreCase为真,则忽略属性标识符的字符大小写;否则情况很重要。- 参数:
attrID- 非空 要添加的属性的 ID。如果此属性集忽略其属性 ID 的字符大小写,则忽略 attrID 的大小写。val- 要添加的属性值。如果为空,则将空值添加到属性。ignoreCase- true 表示此属性集在检索或添加属性时将忽略其属性标识符的大小写; false 表示尊重大小写。
-
-
方法详情
-
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返回的对象中的任何字段都不需要修改。- 指定者:
clone在接口Attributes中- 重写:
clone在类Object中- 返回:
- 此实例的克隆。
- 参见:
-
isCaseIgnored
public boolean isCaseIgnored()从接口Attributes复制的描述确定属性集在检索或添加属性时是否忽略属性标识符的大小写。- 指定者:
isCaseIgnored在接口Attributes中- 返回:
- 如果忽略大小写则为真;否则为假。
-
size
public int size()从接口Attributes复制的描述检索属性集中的属性数。- 指定者:
size在接口Attributes中- 返回:
- 此属性集中属性的非负数。
-
get
从接口Attributes复制的描述从属性集中检索具有给定属性 id 的属性。- 指定者:
get在接口Attributes中- 参数:
attrID- 要检索的属性的非空 ID。如果此属性集忽略其属性 ID 的字符大小写,则忽略 attrID 的大小写。- 返回:
- 由 attrID 标识的属性;如果找不到则为 null。
- 参见:
-
getAll
从接口Attributes复制的描述检索属性集中属性的枚举。更新此属性集对此枚举的影响未定义。- 指定者:
getAll在接口Attributes中- 返回:
-
此属性集中属性的非空枚举。枚举的每个元素都属于
Attribute类。如果属性集有零个属性,则返回一个空枚举。
-
getIDs
从接口Attributes复制的描述检索属性集中属性 ID 的枚举。更新此属性集对此枚举的影响未定义。- 指定者:
getIDs在接口Attributes中- 返回:
- 此属性集中属性 ID 的非空枚举。枚举的每个元素都属于 String 类。如果属性集有零个属性,则返回一个空枚举。
-
put
从接口Attributes复制的描述将新属性添加到属性集中。- 指定者:
put在接口Attributes中- 参数:
attrID- 非空 要添加的属性的 ID。如果属性集忽略其属性 ID 的字符大小写,则忽略 attrID 的大小写。val- 要添加的属性的可能空值。如果为 null,则该属性没有任何值。- 返回:
- 在此属性集中先前具有 attrID 的属性;如果不存在此类属性,则为 null。
- 参见:
-
put
从接口Attributes复制的描述将新属性添加到属性集中。- 指定者:
put在接口Attributes中- 参数:
attr- 要添加的非空属性。如果属性集忽略其属性 id 的字符大小写,则忽略 attr 标识符的大小写。- 返回:
- 与此属性集中先前的 attr 具有相同 ID 的属性;如果不存在此类属性,则为 null。
- 参见:
-
remove
从接口Attributes复制的描述从属性集中删除属性 ID 为“attrID”的属性。如果该属性不存在,则忽略。- 指定者:
remove在接口Attributes中- 参数:
attrID- 要删除的属性的非空 ID。如果属性集忽略其属性 ID 的字符大小写,则忽略 attrID 的大小写。- 返回:
- 与属性集中先前的 attrID 具有相同 ID 的属性;如果不存在此类属性,则为 null。
-
toString
生成此属性集的字符串表示形式。该字符串由每个属性标识符和每个属性的内容组成。此字符串的内容对调试很有用,并不意味着以编程方式进行解释。 -
equals
确定此BasicAttributes是否等于另一个Attributes如果两个Attributes都是Attributes的实例,则它们相等,以相同的方式处理属性 ID 的情况,并且包含相同的属性。此BasicAttributes中的每个Attribute使用Object.equals()检查是否相等,这可能已被Attribute的实现覆盖)。如果一个子类覆盖了equals(),它也应该覆盖hashCode()以便两个相同的Attributes实例具有相同的哈希码。 -
hashCode
public int hashCode()计算此 BasicAttributes 的哈希码。哈希码是通过添加此对象的属性的哈希码来计算的。如果此 BasicAttributes 忽略其属性 ID 的大小写,则会将一个添加到哈希代码中。如果一个子类覆盖了
hashCode(),它也应该覆盖equals()以便两个相同的Attributes实例具有相同的哈希码。
-