Package java.io

Class ObjectStreamClass

java.lang.Object
java.io.ObjectStreamClass
All Implemented Interfaces:
Serializable

public class ObjectStreamClass
extends Object
implements Serializable
Represents a descriptor for identifying a class during serialization and deserialization. Information contained in the descriptor includes the name and SUID of the class as well as field names and types. Information inherited from the superclasses is also taken into account.
See Also:
ObjectOutputStream, ObjectInputStream, Class, Serialized Form
  • Field Details

    • NO_FIELDS

      public static final ObjectStreamField[] NO_FIELDS
      Constant indicating that the class has no Serializable fields.
  • Method Details

    • forClass

      public Class<?> forClass()
      Returns the class (java.lang.Class) for this descriptor.
      Returns:
      the class in the local VM that this descriptor represents; null if there is no corresponding class.
    • getField

      public ObjectStreamField getField​(String name)
      Gets a field descriptor of the class represented by this class descriptor.
      Parameters:
      name - the name of the desired field.
      Returns:
      the field identified by name or null if there is no such field.
    • getFields

      public ObjectStreamField[] getFields()
      Returns a collection of field descriptors for the serialized fields of the class represented by this class descriptor.
      Returns:
      an array of field descriptors or an array of length zero if there are no fields in this descriptor's class.
    • getName

      public String getName()
      Returns the name of the class represented by this descriptor.
      Returns:
      the fully qualified name of the class this descriptor represents.
    • getSerialVersionUID

      public long getSerialVersionUID()
      Returns the Serial Version User ID of the class represented by this descriptor.
      Returns:
      the SUID for the class represented by this descriptor.
    • lookup

      public static ObjectStreamClass lookup​(Class<?> cl)
      Returns the descriptor for a serializable class. Returns null if the class doesn't implement Serializable or Externalizable.
      Parameters:
      cl - a java.lang.Class for which to obtain the corresponding descriptor
      Returns:
      the corresponding descriptor if the class is serializable or externalizable; null otherwise.
    • lookupAny

      public static ObjectStreamClass lookupAny​(Class<?> cl)
      Returns the descriptor for any class, whether or not the class implements Serializable or Externalizable.
      Parameters:
      cl - a java.lang.Class for which to obtain the corresponding descriptor
      Returns:
      the descriptor
      Since:
      1.6
    • toString

      public String toString()
      Returns a string containing a concise, human-readable description of this descriptor.
      Overrides:
      toString in class Object
      Returns:
      a printable representation of this descriptor.