次の記事を読みました。
http://javapapers.com/core-java/externalizable-vs-serializable/
オブジェクトの逆シリアル化 (再構成) では、引数のない public コンストラクターを使用してオブジェクトを再構成します。Serializable の場合、コンストラクターを使用する代わりに、オブジェクトは ObjectInputStream から読み取ったデータを使用して再構築されます。
上記の点により、Externalizable オブジェクトには引数のない public コンストラクターが必要であることが要求されます。Seriablizable の場合、必須ではありません。
コンストラクター呼び出しについては本当ですか
シリアライズ可能:デシリアライゼーションは、最も近い非祖先
のコンストラクタのみを呼び出しますSerializable
外部化可能:逆シリアル化は、インターフェイスのみ
を実装するクラスのコンストラクターを呼び出します。Externalizable
?