ObjectStreamField

public class ObjectStreamField
extends Object implements Comparable<Object>

java.lang.Object
   ↳ java.io.ObjectStreamField


A description of a Serializable field from a Serializable class. An array of ObjectStreamFields is used to declare the Serializable fields of a class.

See also:

Summary

Public constructors

ObjectStreamField(String name, Class<?> type)

Create a Serializable field with the specified type.

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

Creates an ObjectStreamField representing a serializable field with the given name and type.

Public methods

int compareTo(Object obj)

Compare this field with another ObjectStreamField.

String getName()

Get the name of this field.

int getOffset()

Offset of field within instance data.

Class<?> getType()

Get the type of the field.

char getTypeCode()

Returns character encoding of field type.

String getTypeString()

Return the JVM type signature.

boolean isPrimitive()

Return true if this field has a primitive type.

boolean isUnshared()

Returns boolean value indicating whether or not the serializable field represented by this ObjectStreamField instance is unshared.

String toString()

Return a string that describes this field.

Protected methods

void setOffset(int offset)

Offset within instance data.

Inherited methods

Public constructors

ObjectStreamField

Added in API level 1
public ObjectStreamField (String name, 
                Class<?> type)

Create a Serializable field with the specified type. This field should be documented with a serialField tag.

Parameters
name String: the name of the serializable field

type Class: the Class object of the serializable field

ObjectStreamField

Added in API level 1
public ObjectStreamField (String name, 
                Class<?> type, 
                boolean unshared)

Creates an ObjectStreamField representing a serializable field with the given name and type. If unshared is false, values of the represented field are serialized and deserialized in the default manner--if the field is non-primitive, object values are serialized and deserialized as if they had been written and read by calls to writeObject and readObject. If unshared is true, values of the represented field are serialized and deserialized as if they had been written and read by calls to writeUnshared and readUnshared.

Parameters
name String: field name

type Class: field type

unshared boolean: if false, write/read field values in the same manner as writeObject/readObject; if true, write/read in the same manner as writeUnshared/readUnshared

Public methods

compareTo

Added in API level 1
public int compareTo (Object obj)

Compare this field with another ObjectStreamField. Return -1 if this is smaller, 0 if equal, 1 if greater. Types that are primitives are "smaller" than object types. If equal, the field names are compared.

Parameters
obj Object

Returns
int

getName

Added in API level 1
public String getName ()

Get the name of this field.

Returns
String a String representing the name of the serializable field

getOffset

Added in API level 1
public int getOffset ()

Offset of field within instance data.

Returns
int the offset of this field

See also:

getType

Added in API level 1
public Class<?> getType ()

Get the type of the field. If the type is non-primitive and this ObjectStreamField was obtained from a deserialized ObjectStreamClass instance, then Object.class is returned. Otherwise, the Class object for the type of the field is returned.

Returns
Class<?> a Class object representing the type of the serializable field

getTypeCode

Added in API level 1
public char getTypeCode ()

Returns character encoding of field type. The encoding is as follows:

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

Returns
char the typecode of the serializable field

getTypeString

Added in API level 1
public String getTypeString ()

Return the JVM type signature.

Returns
String null if this field has a primitive type.

isPrimitive

Added in API level 1
public boolean isPrimitive ()

Return true if this field has a primitive type.

Returns
boolean true if and only if this field corresponds to a primitive type

isUnshared

Added in API level 1
public boolean isUnshared ()

Returns boolean value indicating whether or not the serializable field represented by this ObjectStreamField instance is unshared.

Returns
boolean true if this field is unshared

toString

Added in API level 1
public String toString ()

Return a string that describes this field.

Returns
String a string representation of the object.

Protected methods

setOffset

Added in API level 1
protected void setOffset (int offset)

Offset within instance data.

Parameters
offset int: the offset of the field

See also: