Externalizable interface extends Serializable interface in Java. It is
used for giving the Class control over saving and restoring the
contents of its instances.
A class implements methods writeExternal() and readExternal() to
store and restore the object.
https://www.geeksforgeeks.org/externalizable-interface-java/