[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends:00397] Re: Serializable について



前橋です。

竹ノ内まり子 さんは書きました:
>お伺いしたいのはSerializableをimplementするだけで、
>なぜシリアライズできるようになるのかということです。
>とても不思議です。

「なぜ」と言われても、「できるようになっているから」としか
答えようがありませんが… (^^;

Javaの場合、メモリ上のオブジェクトについて、

「そのオブジェクトがどんなクラスのインスタンスであるのか」

を実行時にVMが把握していますし、クラスがわかれば

「そのオブジェクトの何バイト目に、どんな型のデータが
 格納されているのか」

もわかります。
よって、シリアライズが出来るのは当然のことです。

Serializableは単なるマーカインタフェースであり、
「このクラスをシリアライズしてよいか」を示すためだけに使います。
シリアライズしてもしょうがないクラスや、セキュリティ上の理由で
シリアライズを望まないクラスもあるからです。

------------------------------------------------------------
  前橋 和弥                        PXU00211@xxxxxxxxxxx
                                   http://kmaebashi.com
------------------------------------------------------------