Serializationはオブジェクトを入出力のストリームを通じてやり取りできるように
する仕組みです。オブジェクトの情報を直接ファイルに保存したり、
ネットワークを通じて送ったりすることを可能にします。
public class Student implements Serializable {
:
:
}
オブジェクトのストリームへの入出力を提供するクラスが、
java.io の ObjectInputStream および ObjectOutputStreamクラスです。
たとえばオブジェクトをファイルに保存するためには、
次のような手順で準備を行うことになります。
File file = new File( filename );
FileOutputStream fos = new FileOutputStream( file );
ObjectOutputStream oos = new ObjectOutputStream( fos );
:
oos.writeObject( object );
:
Serializationを通じて入出力するオブジェクトの個数や、クラスは全く任意に
指定できます。唯一の制限は Serializableであるということのみです。
またファイルに保存された場合、その情報をテキストの情報として見たり、
通常のテキストエディタで編集することはできません。
そうした処理が必要な場合は、
専用のクラスを別に用意しなければなりません。
サンプルプログラムのソース