public abstract interface Externalizable extends Serializable
The Externalizable interface is implemented by classes that want to have complete control over the process of serialization. Under this scenario, only the class name is serialized by the JVM. Everything else has to be done by the object itself.
Before deciding to use this interface, developers should consider overriding readObject and writeObject while still using normal serialization. Making an Externalizable class is a very complex process.
public void writeExternal (ObjectOutput out) throws IOException public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException