< Java基本文法

  • 直列化によって、インスタンス内の全データをバイナリに変換できる
  • ストリームを使ってファイルに保存したり、ネットワークで伝送したりできる
  • クラスを直列化に対応させるために Serializable を実装する必要がある
  • 実装後、ObjectOutputStreamObjectInputStreamで自由に保存/復元できるようになる
  • Has-a関係にあるフィールドも Serializable を実装していれば連鎖して直列化される
  • 直列化したクラスのバージョンをシリアルバージョンUIDで管理する必要がある
  • クラスを修正し新しいバージョンになった後は、シリアルバージョンUIDの数値も変更する
import java.io.*;
public class Hero implements Serializable {
    private static final long serialVersionUID = 39048750239745L;    // ランダムな数値でOK
...