データ保存 – シリアライズ

NO IMAGE

データを保存するときにインスタンスをそのまま保存できると便利ですよね。それを可能にするのがシリアライズです。シリアライズとは、データをバイナリなりアスキーなりで一列のデータとして変換することのようです。と、素人なりにそう思っています。

シリアライズしたいクラスはSerializableをimplementします。するとインスタンス変数をシリアライズすることができます。シリアライズできる型は限られているようで、Textureとかはできませんでした。Textureを継承したクラスとかを作ってSerializableをimplementすればいいのだと思います。シリアライズする必要のない変数やできない変数はtransientをつければよいようです。

ファイルへの書き込みは、ObjectOutputStreamを使います。

シリアライズしたデータを読み込むのをデシリアライズと呼ぶようです。やはりObjectInputStreamを使います。