import java.io.*;
class Person implements Serializable
{
String name;
int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public class Main {
public static void main(String[] args) throws IOException, ClassNotFoundException {
//将对象存储到文件里 延长其生命周期
ObjectOutputStream oos=new ObjectOutputStream(new FileOutputStream("/Users/mac/java/obj.object"));
//插入的对象要 实现 Serializable 接口否则会报错
// Serializable 在序列化运行的时候会使用一个 serizlVersionUID 的版本号与每个可序列化类相关联
// 然后在反序列化的时候 用于验证其版本号 如果不同就会报错
oos.writeObject(new Person("神奇的我",12));
oos.close();
ObjectInputStream ois=new ObjectInputStream(new FileInputStream("/Users/mac/java/obj.object"));
Person p=(Person)ois.readObject();
System.out.println(p.getName()+" "+p.getAge());
}
}