A description of a Serializable field from a Serializable class. An array
of ObjectStreamFields is used to declare the Serializable fields of a class.
canonical JVM signature of field type
field type (Object.class if unknown non-primitive type)
whether or not to (de)serialize field values as unshared
corresponding reflective field object, if any
offset of field value in enclosing field group
Create a Serializable field with the specified type. This field should
be documented with a
serialField tag.
- Parameters:
name the name of the serializable fieldtype the Class object of the serializable field
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 field nametype field typeunshared if false, write/read field values in the same manner
as writeObject/readObject; if true, write/read in the same
manner as writeUnshared/readUnshared- Since:
- 1.4
Creates an ObjectStreamField representing a field with the given name,
signature and unshared setting.
switch (signature.charAt(0)) { Creates an ObjectStreamField representing the given field with the
specified unshared setting. For compatibility with the behavior of
earlier serialization implementations, a "showType" parameter is
necessary to govern whether or not a getType() call on this
ObjectStreamField (if non-primitive) will return Object.class (as
opposed to a more specific reference type).
Get the name of this field.
- Returns:
- a
String representing the name of the serializable
field
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:
- a
Class object representing the type of the
serializable field
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:
- the typecode of the serializable field
Return the JVM type signature.
- Returns:
- null if this field has a primitive type.
Offset of field within instance data.
Offset within instance data.
- Parameters:
offset the offset of the field- See also:
getOffset()
Return true if this field has a primitive type.
- Returns:
- true if and only if this field corresponds to a primitive type
return ((tcode != 'L') && (tcode != '['));
Returns boolean value indicating whether or not the serializable field
represented by this ObjectStreamField instance is unshared.
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.
Return a string that describes this field.
Returns field represented by this ObjectStreamField, or null if
ObjectStreamField is not associated with an actual field.
Returns JVM type signature of field (similar to getTypeString, except
that signature strings are returned for primitive fields as well).