この例題は、writeObject メソッドと readObject メソッドを使ってカスタムデータ形式にコード化する方法を示します。大量の持続性データがある場合は、この例題で紹介するように、データを圧縮形式で保存するほうが便利です。
この例題では三角配列を使います。三角配列は、対称形の二次元配列です。直列化では、配列の半分だけが保存されます。この例題では、配列の半分を writeObject に直列化し、次にその半分を直列化復元し、さらにコピーして残りの半分として復元することにより、配列全体を readObject に復元します。
この例題は、バージョン管理がサポートされないという点で、「直列化と直列化可能フィールド API の使用」の例題とは異なります。さらに、この例題では Externalizable インタフェースを使用しないため、スーパークラスのことは考慮されていません。