对象序列化

记住一句话 序列化存储起来是用来 使用的, 不是用来看的

对象序列化的含义是什么?

 把对象数据存入到文件中去

对象序列化用了哪个流?

 对象字节输出流 ObjectOutputStream

 方法Public void writeObject(Object obj)

序列化对象的要求是什么样的?

 对象必须实现序列化接口

 

对象字节输出流

 

public class ObjectOutputStreamDome1 {
public static void main(String[] args) throws Exception{
//1. 创建学生对象
Student s = new Student("陈雷","chenlei","1314520",21);

//2. 对象序列化: 使用对象字节输出流包装字节输出流管道
OutputStream os = new FileOutputStream("E:\\idea_java_project\\io_project\\src\\dataCHEN.txt");
ObjectOutputStream oos = new ObjectOutputStream(os);

//3.直接调用序列化方法
oos.writeObject(s);

//4.释放资源
oos.close();
}
}
class Student implements Serializable { //对象如果要序列化, 必须要实现Serializable接口
private String name;
private String loginName;
private String passWord;
private int age;

----------------------------------------------------------
反序列化
/*
目标: 学会进行对象反序列化:使用对象字节流把文件中的对象数据恢复成内存中的Java对象
*/
public class ObjectInputStreamDemo2 {
public static void main(String[] args) throws Exception{
//1. 创建对象字节输入流管道 包装低级的字节输入流管道
InputStream is = new FileInputStream("E:\\idea_java_project\\io_project\\src\\dataCHEN.txt");
ObjectInputStream ois = new ObjectInputStream(is);

//2. 调用对象字节输入流方法
Student s = (Student) ois.readObject();
System.out.println(s);
}
}

 

posted on 2022-03-29 18:53  我要当程序源  阅读(41)  评论(0)    收藏  举报

导航