シリアライズのネタが増えてきたので、ページを独立させた。
で、シリアライズ可能クラスの定義方法について追記。
シリアライズしたものから復元する場合、シリアライズ可能クラスはコンストラクターが呼ばれないが、スーパークラスがシリアライズ可能でない場合は、そのスーパークラスのデフォルトコンストラクターが呼ばれる。
これはフィールドのインスタンスに対しても同じ。
試してみるとややこしいので(苦笑)、シリアライズするクラスは、スーパークラスもフィールドのクラス(実行時のインスタンスのクラス)も、全てシリアライズ可能にすべきだな。
↑思考停止(爆)
シリアライズもリフレクションを使ってるんだろうと思ってたんだけど、コンストラクターが呼ばれないところを見ると、別の方法でメモリ確保してるんだなぁ。