This example shows how to evolve a persistent format using the
Externalizable interface. A class that uses the Externalizable
interface is responsible for saving its own state, for saving the state
of its supertype, and for versioning (including skipping over data).
This example specifically deals with versioning. For information about
saving the state of the supertype, which may or may not be
Externalizable, see the following examples: