ObjectStreamField

public class ObjectStreamField extends Object
implements Comparable<Object>

Describes a field for the purpose of serialization. Classes can define the collection of fields that are serialized, which may be different from the set of all declared fields.

Public Constructor Summary

ObjectStreamField(String name, Class<?> cl)
Constructs an ObjectStreamField with the specified name and type.
ObjectStreamField(String name, Class<?> cl, boolean unshared)
Constructs an ObjectStreamField with the specified name, type and the indication if it is unshared.

Public Method Summary

int
compareTo(Object o)
Compares this field descriptor to the specified one.
String
getName()
Gets the name of this field.
int
getOffset()
Gets the offset of this field in the object.
Class<?>
getType()
Gets the type of this field.
char
getTypeCode()
Gets a character code for the type of this field.
String
getTypeString()
Gets the type signature used by the VM to represent the type of this field.
boolean
isPrimitive()
Indicates whether this field's type is a primitive type.
boolean
isUnshared()
Indicates whether this field is unshared.
String
toString()
Returns a string containing a concise, human-readable description of this field descriptor.

Protected Method Summary

void
setOffset(int newValue)
Sets this field's offset in the object.

Inherited Method Summary

Public Constructors

public ObjectStreamField (String name, Class<?> cl)

Constructs an ObjectStreamField with the specified name and type.

Parameters
name the name of the field.
cl the type of the field.
Throws
NullPointerException if name or cl is null.

public ObjectStreamField (String name, Class<?> cl, boolean unshared)

Constructs an ObjectStreamField with the specified name, type and the indication if it is unshared.

Parameters
name the name of the field.
cl the type of the field.
unshared true if the field is written and read unshared; false otherwise.
Throws
NullPointerException if name or cl is null.

Public Methods

public int compareTo (Object o)

Compares this field descriptor to the specified one. Checks first if one of the compared fields has a primitive type and the other one not. If so, the field with the primitive type is considered to be "smaller". If both fields are equal, their names are compared.

Parameters
o the object to compare with.
Returns
  • -1 if this field is "smaller" than field o, 0 if both fields are equal; 1 if this field is "greater" than field o.

public String getName ()

Gets the name of this field.

Returns
  • the field's name.

public int getOffset ()

Gets the offset of this field in the object.

Returns
  • this field's offset.

public Class<?> getType ()

Gets the type of this field.

Returns
  • a Class object representing the type of the field.

public char getTypeCode ()

Gets a character code for the type of this field. The following codes are used:

 B     byte
 C     char
 D     double
 F     float
 I     int
 J     long
 L     class or interface
 S     short
 Z     boolean
 [     array
 

Returns
  • the field's type code.

public String getTypeString ()

Gets the type signature used by the VM to represent the type of this field.

Returns
  • the signature of this field's class or null if this field's type is primitive.