|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjavax.naming.directory.BasicAttribute
public class BasicAttribute
Field Summary | |
---|---|
protected String |
attrID
The ID of this attribute. |
protected boolean |
ordered
True if this attribute's values are ordered. |
protected Vector<Object> |
values
Values for this attribute. |
Constructor Summary | |
---|---|
BasicAttribute(String id)
|
|
BasicAttribute(String id,
boolean ordered)
|
|
BasicAttribute(String id,
Object value)
|
|
BasicAttribute(String id,
Object value,
boolean ordered)
|
Method Summary | |
---|---|
void |
add(int index,
Object val)
|
boolean |
add(Object val)
|
void |
clear()
|
Object |
clone()
This method may be called to create a new copy of the Object. |
boolean |
contains(Object val)
|
boolean |
equals(Object obj)
Determine whether this Object is semantically equal to another Object. |
Object |
get()
|
Object |
get(int index)
|
NamingEnumeration<?> |
getAll()
|
DirContext |
getAttributeDefinition()
|
DirContext |
getAttributeSyntaxDefinition()
|
String |
getID()
|
int |
hashCode()
Get a value that represents this Object, as uniquely as possible within the confines of an int. |
boolean |
isOrdered()
|
Object |
remove(int index)
|
boolean |
remove(Object val)
|
Object |
set(int index,
Object val)
|
int |
size()
|
String |
toString()
Convert this Object to a human-readable String. |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected String attrID
protected boolean ordered
protected transient Vector<Object> values
Constructor Detail |
---|
public BasicAttribute(String id)
public BasicAttribute(String id, boolean ordered)
public BasicAttribute(String id, Object value)
public BasicAttribute(String id, Object value, boolean ordered)
Method Detail |
---|
public void add(int index, Object val)
add
in interface Attribute
public boolean add(Object val)
add
in interface Attribute
public void clear()
clear
in interface Attribute
public Object clone()
Object
o == o.clone()
is falseo.getClass() == o.clone().getClass()
is trueo.equals(o)
is trueHowever, these are not strict requirements, and may
be violated if necessary. Of the three requirements, the
last is the most commonly violated, particularly if the
subclass does not override Object.equals(Object)
.
If the Object you call clone() on does not implement
Cloneable
(which is a placeholder interface), then
a CloneNotSupportedException is thrown. Notice that
Object does not implement Cloneable; this method exists
as a convenience for subclasses that do.
Object's implementation of clone allocates space for the new Object using the correct class, without calling any constructors, and then fills in all of the new field values with the old field values. Thus, it is a shallow copy. However, subclasses are permitted to make a deep copy.
All array types implement Cloneable, and override
this method as follows (it should never fail):
public Object clone() { try { super.clone(); } catch (CloneNotSupportedException e) { throw new InternalError(e.getMessage()); } }
clone
in interface Attribute
clone
in class Object
Cloneable
public boolean contains(Object val)
contains
in interface Attribute
public boolean equals(Object obj)
Object
There are some fairly strict requirements on this
method which subclasses must follow:
a.equals(b)
and
b.equals(c)
, then a.equals(c)
must be true as well.a.equals(b)
and
b.equals(a)
must have the same value.a.equals(a)
must
always be true.a.equals(null)
must be false.a.equals(b)
must imply
a.hashCode() == b.hashCode()
.
The reverse is not true; two objects that are not
equal may have the same hashcode, but that has
the potential to harm hashing performance.This is typically overridden to throw a ClassCastException
if the argument is not comparable to the class performing
the comparison, but that is not a requirement. It is legal
for a.equals(b)
to be true even though
a.getClass() != b.getClass()
. Also, it
is typical to never cause a NullPointerException
.
In general, the Collections API (java.util
) use the
equals
method rather than the ==
operator to compare objects. However, IdentityHashMap
is an exception to this rule, for its own good reasons.
The default implementation returns this == o
.
equals
in class Object
obj
- the Object to compare to
Object.hashCode()
public Object get() throws NamingException
get
in interface Attribute
NamingException
public Object get(int index) throws NamingException
get
in interface Attribute
NamingException
public NamingEnumeration<?> getAll() throws NamingException
getAll
in interface Attribute
NamingException
public DirContext getAttributeDefinition() throws OperationNotSupportedException, NamingException
getAttributeDefinition
in interface Attribute
OperationNotSupportedException
NamingException
public DirContext getAttributeSyntaxDefinition() throws OperationNotSupportedException, NamingException
getAttributeSyntaxDefinition
in interface Attribute
OperationNotSupportedException
NamingException
public String getID()
getID
in interface Attribute
public int hashCode()
Object
There are some requirements on this method which
subclasses must follow:
a.equals(b)
is true, then
a.hashCode() == b.hashCode()
must be as well.
However, the reverse is not necessarily true, and two
objects may have the same hashcode without being equal.Notice that since hashCode
is used in
Hashtable
and other hashing classes,
a poor implementation will degrade the performance of hashing
(so don't blindly implement it as returning a constant!). Also,
if calculating the hash is time-consuming, a class may consider
caching the results.
The default implementation returns
System.identityHashCode(this)
hashCode
in class Object
Object.equals(Object)
,
System.identityHashCode(Object)
public boolean isOrdered()
isOrdered
in interface Attribute
public Object remove(int index)
remove
in interface Attribute
public boolean remove(Object val)
remove
in interface Attribute
public Object set(int index, Object val)
set
in interface Attribute
public int size()
size
in interface Attribute
public String toString()
Object
System.out.println()
and such.
It is typical, but not required, to ensure that this method
never completes abruptly with a RuntimeException
.
This method will be called when performing string
concatenation with this object. If the result is
null
, string concatenation will instead
use "null"
.
The default implementation returns
getClass().getName() + "@" +
Integer.toHexString(hashCode())
.
toString
in class Object
Object.getClass()
,
Object.hashCode()
,
Class.getName()
,
Integer.toHexString(int)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |