【六祎 - Java】对象序列化

     目标:对象序列化技术。

     对象序列化:就是把Java对象数据直接存储到文件中去。           对象 => 文件中
     对象反序列化:就是把Java对象的文件数据恢复到Java对象中。         文件中 => 对象

                   字节流                                   字符流
     字节输入流               字节输出流              字符输入流          字符输出流
     InputStream             OutputStream          Reader             Writer   (抽象类)
     FileInputStream         FileOutputStream      FileReader         FileWriter(实现类)
     BufferedInputStream     BufferedOutputStream  BufferedReader     BufferedWriter(实现类,缓冲流)
                                                   InputStreamReader  OutputStreamWriter
     ObjectInputStream       ObjectOutputStream

     对象序列化流(对象字节输出流):ObjectOutputStream
         -- 作用:把内存中的Java对象数据保存到文件中去。
         -- 构造器:    public ObjectOutputStream(OutputStream out)
         -- 序列化方法: public final void writeObject(Object obj)
     注意:如果要序列化对象,那么对象必须实现序列化接口:implements Serializable;


public class SerializeDemo01 {
    public static void main(String[] args) throws Exception {
        // 1.创建一个User对象
        User user = new User("泷泽萝拉","dongjing-lzll","15longze",21);
        // 需求:把Java对象序列化到本地文件中去。
        // 2.创建一个低级的字节输出流通向目标文件。
        OutputStream os = new FileOutputStream("Day10Demo/obj.dat");
        // 3.把低级的字节输出流包装成高级的对象字节输出流:
        // 因为只有对象字节输出流才能够在这里做对象系列化!
        ObjectOutputStream oos = new ObjectOutputStream(os);
        // 4.开始使用对象序列化流序列化对象。
        oos.writeObject(user);
        oos.close();
        System.out.println("序列化成功!");
    }
}
posted @ 2022-04-26 00:55  你好,Alf  阅读(24)  评论(0编辑  收藏  举报