Added in API level 1

ObjectStreamClass

open class ObjectStreamClass : Serializable
kotlin.Any
   ↳ java.io.ObjectStreamClass

Serialization's descriptor for classes. It contains the name and serialVersionUID of the class. The ObjectStreamClass for a specific class loaded in this Java VM can be found/created using the lookup method.

The algorithm to compute the SerialVersionUID is described in Object Serialization Specification, Section 4.6, Stream Unique Identifiers.

Summary

Public methods
open Class<*>!

Return the class in the local VM that this version is mapped to.

open ObjectStreamField!
getField(name: String!)

Get the field of this class by name.

open Array<ObjectStreamField!>!

Return an array of the fields of this serializable class.

open String!

Returns the name of the class described by this descriptor.

open Long

Return the serialVersionUID for this class.

open static ObjectStreamClass!
lookup(cl: Class<*>!)

Find the descriptor for a class that can be serialized.

open static ObjectStreamClass!
lookupAny(cl: Class<*>!)

Returns the descriptor for any class, regardless of whether it implements Serializable.

open String

Return a string describing this ObjectStreamClass.

Properties
static Array<ObjectStreamField!>!

serialPersistentFields value indicating no serializable fields

Public methods

forClass

Added in API level 1
open fun forClass(): Class<*>!

Return the class in the local VM that this version is mapped to. Null is returned if there is no corresponding local class.

Return
Class<*>! the Class instance that this descriptor represents

getField

Added in API level 1
open fun getField(name: String!): ObjectStreamField!

Get the field of this class by name.

Parameters
name String!: the name of the data field to look for
Return
ObjectStreamField! The ObjectStreamField object of the named field or null if there is no such named field.

getFields

Added in API level 1
open fun getFields(): Array<ObjectStreamField!>!

Return an array of the fields of this serializable class.

Return
Array<ObjectStreamField!>! an array containing an element for each persistent field of this class. Returns an array of length zero if there are no fields.

getName

Added in API level 1
open fun getName(): String!

Returns the name of the class described by this descriptor. This method returns the name of the class in the format that is used by the Class#getName method.

Return
String! a string representing the name of the class

getSerialVersionUID

Added in API level 1
open fun getSerialVersionUID(): Long

Return the serialVersionUID for this class. The serialVersionUID defines a set of classes all with the same name that have evolved from a common root class and agree to be serialized and deserialized using a common format. NonSerializable classes have a serialVersionUID of 0L.

Return
Long the SUID of the class described by this descriptor

lookup

Added in API level 1
open static fun lookup(cl: Class<*>!): ObjectStreamClass!

Find the descriptor for a class that can be serialized. Creates an ObjectStreamClass instance if one does not exist yet for class. Null is returned if the specified class does not implement java.io.Serializable or java.io.Externalizable.

Parameters
cl Class<*>!: class for which to get the descriptor
Return
ObjectStreamClass! the class descriptor for the specified class

lookupAny

Added in API level 9
open static fun lookupAny(cl: Class<*>!): ObjectStreamClass!

Returns the descriptor for any class, regardless of whether it implements Serializable.

Parameters
cl Class<*>!: class for which to get the descriptor
Return
ObjectStreamClass! the class descriptor for the specified class

toString

Added in API level 1
open fun toString(): String

Return a string describing this ObjectStreamClass.

Return
String a string representation of the object.

Properties

NO_FIELDS

Added in API level 1
static val NO_FIELDS: Array<ObjectStreamField!>!

serialPersistentFields value indicating no serializable fields