Java FAQ: Top Questions
37. What is the Serializable interface?
The
Serializable
interface in
java.io
is a marker interface (no methods) that indicates a class’s objects can be serialized into a byte stream for storage or transmission.
-
Serialization:
Converts an object to bytes using
ObjectOutputStream
. -
Deserialization:
Reconstructs the object using
ObjectInputStream
. - serialVersionUID: Ensures compatibility between serialized and deserialized versions.
- transient: Excludes fields from serialization (see Q20).
- Use Case: Persisting objects or network communication.