Java Object Serialization
Object Serialization supports the encoding of objects and the objects reachable from them, into a stream of bytes. Serialization also supports the complementary reconstruction of the object graph from a stream. Serialization is used for lightweight persistence and for communication via sockets or Java Remote Method Invocation (Java RMI). The default encoding of objects protects private and transient data, and supports the evolution of the classes. A class may implement its own external encoding and is then solely responsible for the external format.
Serialization now includes an API that allows the serialized data of an object to be specified independently of the fields of the class and allows those serialized data fields to be written to and read from the stream using the existing protocol to ensure compatiblity with the default writing and reading mechanisms.
Enhancements
- Enhancements in Java SE 6 - Describes enhancements and improvements to Object Serialization in Java SE 6.
- Previous Enhancements - Describes enhancements to Object Serialization made in previous releases of the Java SE Platform.
Specification
- Specification - Describes the architecture of the Object Serialization system and the APIs.
API Reference
- java.io Package - Documents all of the interfaces and classes.
More Information
- FAQ - Answers the most frequently asked questions about Object Serialization.
Examples
- Examples - Demonstrate different aspects of and uses for Object Serialization.
Tools
- serialver - Explains the serialver command, which returns the serialVersionUID for a class.
For More Information
- The Serialization Home Page.