老规矩,先上代码再总结:
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
public class main {
public static void main(String[] args)throws IOException, ClassNotFoundException{
ObjectOutputStream oos=new ObjectOutputStream(
new FileOutputStream("employee.dat"));
Foo2 foo2=new Foo2();
oos.writeObject(foo2);
oos.flush();
oos.close();
ObjectInputStream ois=new ObjectInputStream(
new FileInputStream("employee.dat"));
Foo2 foo21= (Foo2)ois.readObject();
System.out.println(foo21);
ois.close();
}
}
class Foo {
public Foo(){
System.out.println("foo...");
}
}
class Foo1 extends Foo implements Serializable{
public Foo1(){
System.out.println("foo1...");
}
}
class Foo2 extends Foo1{
public Foo2(){
System.out.println("foo2..."