Externalizable

La interface Externalizable extiende Serializable. Tiene el mismo objetivo que ésta, pero no tiene ningún comportamiento automático, todo se deja en manos del programador.

Externalizable tiene dos métodos que deben implementarse.

interface Externalizable {
public void writeExternal(ObjectOutput out) throws IOException; public void readExternal(ObjectInput in) throws IOException,
ClassNotFoundException; }

Al transformar un objeto, el método writeExternal() es responsable de todo lo que se hace. Sólo se guardará lo que dentro de éste método se indique.

El método readExternal() debe ser capaz de recuperar lo guardado por writeExternal(). La lectura debe ser en el mismo orden que la escritura. Es importante saber que antes de llamar a este método se llama al constructor por defecto de la clase.

Como se ve el comportamiento de Externalizable es muy similar al de Serializable.

Fuente: Aprenda Java como si estuviera en primero de la Universidad de Navarra