import java.io.*;
public class TestSerilization {
public static void main(
String[] args) {
Cat c = new Cat(3);
Dog d = new Dog(c,4);
p("before: "+d.getCat().getI());
FileOutputStream fs = null;
try {
fs = new FileOutputStream("D:/HanJia/seria.ser");
} catch (FileNotFoundException e) {
e.printStackTrace();
}
try {
ObjectOutputStream os = new ObjectOutputStream(fs);
os.writeObject(d);
os.close();
fs.close();
} catch (IOException e) {
e.printStackTrace();
}
FileInputStream fis= null;
try {
fis = new FileInputStream("D:/HanJia/seria.ser");
} catch (FileNotFoundException e) {
e.printStackTrace();
}
ObjectInputStream ois = null;
try {
ois = new ObjectInputStream(fis);
} catch (IOException e1) {
e1.printStackTrace();
}
try {
d = (Dog)ois.readObject();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
p("after: "+d.getCat().getI());
}
static void p(Object o) {
System.out.println(o);
}
}
import java.io.Serializable;
public class Dog implements Serializable{
transient private Cat c;
int i;
public Dog(Cat c,int i) {
this.c = c;
this.i = i;
}
public Cat getCat() {
return c;
}
}
import java.io.*;
public class Cat implements Serializable{
private int a;
public static int c = 3;
public float b = 5.9f;
public Cat(int a) {
this.a = a;
}
int getI() {
return a;
}
}
I declar