public class BasicAttributes extends Object implements Attributes
BasicAttributes是区分大小写或不区分大小写(case-ignore)。 此属性在BasicAttributes构造函数调用时确定。 在不区分大小写的BasicAttributes中,在搜索属性或添加属性时忽略其属性标识符的情况。 在一个区分大小写的BasicAttributes中,情况很重要。
当BasicAttributes类需要创建一个Attribute时,它使用BasicAttribute。 对BasicAttribute没有其他依赖。
请注意,对BasicAttributes的更新(例如添加或删除属性)不会影响目录中的相应表示。 只能使用DirContext界面中的操作来更新目录。
BasicAttributes实例与并发多线程访问不同步。 尝试访问和修改单个BasicAttributes实例的多个线程应锁定该对象。
DirContext.getAttributes(javax.naming.Name) ,
DirContext.modifyAttributes(javax.naming.Name, int, javax.naming.directory.Attributes) ,
DirContext.bind(javax.naming.Name, java.lang.Object, javax.naming.directory.Attributes) ,
DirContext.rebind(javax.naming.Name, java.lang.Object, javax.naming.directory.Attributes) ,
DirContext.createSubcontext(javax.naming.Name, javax.naming.directory.Attributes) ,
DirContext.search(javax.naming.Name, javax.naming.directory.Attributes, java.lang.String[]) ,
Serialized Form
| Constructor and Description |
|---|
BasicAttributes()
构造一个新的属性实例。
|
BasicAttributes(boolean ignoreCase)
构造一个新的属性实例。
|
BasicAttributes(String attrID, Object val)
使用一个属性构造一个新的属性实例。
|
BasicAttributes(String attrID, Object val, boolean ignoreCase)
使用一个属性构造一个新的属性实例。
|
| Modifier and Type | Method and Description |
|---|---|
Object |
clone()
创建并返回此对象的副本。
|
boolean |
equals(Object obj)
确定此
BasicAttributes是否等于另一个
Attributes两个
Attributes相等,如果它们都是Attributes的
实例 ,则以相同的方式处理属性ID的情况,并包含相同的属性。
|
Attribute |
get(String attrID)
使用属性集中的给定属性id检索属性。
|
NamingEnumeration<Attribute> |
getAll()
检索属性集中属性的枚举。
|
NamingEnumeration<String> |
getIDs()
检索属性集中属性ID的枚举。
|
int |
hashCode()
计算此BasicAttributes的哈希码。
|
boolean |
isCaseIgnored()
确定属性集是否在检索或添加属性时忽略属性标识符的情况。
|
Attribute |
put(Attribute attr)
向属性集添加一个新属性。
|
Attribute |
put(String attrID, Object val)
向属性集添加一个新属性。
|
Attribute |
remove(String attrID)
从属性集中删除属性id“attrID”的属性。
|
int |
size()
检索属性集中的属性数。
|
String |
toString()
生成此属性集的字符串表示形式。
|
public BasicAttributes()
public BasicAttributes(boolean ignoreCase)
ignoreCase为真,属性标识符的字符大小写将被忽略;
否则情况重大。
ignoreCase - true表示此属性集将在检索或添加属性时忽略其属性标识符的情况;
假意味着受到尊重。
public BasicAttributes(String attrID, Object val)
attrID - non-null要添加的属性的id。
val - 要添加的属性的值。
如果为null,则将null值添加到该属性。
public BasicAttributes(String attrID, Object val, boolean ignoreCase)
ignoreCase为真,属性标识符的字符大小写将被忽略;
否则情况重大。
attrID - non-null要添加的属性的id。
如果此属性集忽略其属性ID的字符大小写,则忽略attrID的情况。
val - 要添加的属性的值。
如果为null,则将null值添加到该属性。
ignoreCase - true表示当检索或添加属性时,此属性集将忽略其属性标识符的情况;
假意味着受到尊重。
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返回的对象中的字段。
clone的方法Object执行特定的克隆操作。 首先,如果此对象的类不实现接口Cloneable ,则抛出CloneNotSupportedException 。 请注意,所有阵列被认为是实现该接口Cloneable和所述的返回类型clone数组类型的方法T[]是T[]其中T是任何引用或原始类型。 否则,该方法将创建该对象的类的新实例,并将其所有字段初始化为完全符合该对象的相应字段的内容,就像通过赋值一样。 这些字段的内容本身不被克隆。 因此,该方法执行该对象的“浅拷贝”,而不是“深度拷贝”操作。
Object类本身不实现接口Cloneable ,因此在类别为Object的对象上调用clone方法将导致运行时抛出异常。
clone在界面
Attributes
clone在类别
Object
Cloneable
public boolean isCaseIgnored()
Attributes复制
isCaseIgnored在界面
Attributes
public int size()
Attributes复制
size在界面
Attributes
public Attribute get(String attrID)
Attributes复制
get在界面
Attributes
attrID - 要检索的属性的非空ID。
如果此属性集忽略其属性ID的字符大小写,则忽略attrID的情况。
Attributes.put(java.lang.String, java.lang.Object) ,
Attributes.remove(java.lang.String)
public NamingEnumeration<Attribute> getAll()
Attributes复制
getAll在接口
Attributes
public NamingEnumeration<String> getIDs()
Attributes复制
getIDs在界面
Attributes
public Attribute put(String attrID, Object val)
Attributes复制
put在接口
Attributes
attrID - non-null要添加的属性的id。
如果属性集忽略其属性id的字符大小写,则忽略attrID的情况。
val - 要添加的属性的可能的空值。
如果为null,则该属性不具有任何值。
Attributes.remove(java.lang.String)
public Attribute put(Attribute attr)
Attributes复制
put在界面
Attributes
attr - 要添加的非空属性。
如果属性集忽略其属性ID的字符大小写,则忽略attr标识符的情况。
Attributes.remove(java.lang.String)
public Attribute remove(String attrID)
Attributes复制
remove在界面
Attributes
attrID - 要删除的属性的非空id。
如果属性集忽略其属性id的字符大小写,则忽略attrID的情况。
public String toString()
public boolean equals(Object obj)
equals在
Object
obj - 要比较的可能的空对象。
hashCode()
public int hashCode()
通过添加该对象的属性的哈希码来计算哈希码。 如果此BasicAttributes忽略其属性ID的情况,则将一个添加到哈希码。 如果一个子类覆盖hashCode() ,它也应该覆盖equals() ,以使两个相等的 Attributes实例具有相同的哈希码。
hashCode在类别
Object
equals(java.lang.Object)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.