Indeed, if a parent class implements Serializable, the subclass is-a serializable object. But remember, Serializable is as much a commitment as it is an implementable interface. Simply saying a class is Serializable isn't enough...you must live up to the associated commitment.
The Serializable interface provides automatic serialization by using the Java Object Serialization tools. Serializable declares no methods; it acts as a marker, telling the Object Serialization tools that your bean class is serializable. Marking your class Serializable means you are telling the Java Virtual Machine (JVM) that you have made sure your class will work with default serialization. Here are some important points about working with the Serializable interface:
* Classes that implement Serializable must have a no-argument constructor. This constructor will be called when an object is "reconstituted" from a .ser file. * You don't need to implement Serializable in your class if it is already implemented in a superclass. * All fields except static and transient fields are serialized. Use the transient modifier to specify fields you do not want serialized, and to specify classes that are not serializable.
-Cameron McKenzie [ January 01, 2007: Message edited by: Cameron W. McKenzie ]