Serializar um objecto

O seguinte pedaço de código escreve o estado do objecto referenciado por obj no ficheiro com o nome guardado em filename.
ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(filename));
out.writeObject(obj);
out.close();

O método writeObject pode lançar a excepção java.io.IOException.

Desserializar um objecto

O seguinte pedaço de código inicializa a variável obj com uma referência para um objecto com um estado igual ao representado pelo ficheiro com o nome guardado em filename.
UmaDadaClasse obj;
ObjectInputStream inob = new ObjectInputStream(new FileInputStream(filename));
obj = (UmaDadaClasse)inob.readObject();

Este pedaço de código pode lançar as excepções java.io.IOExceptionjava.lang.ClassNotFoundException