
对象字节输出流可以理解为一个高级的管道 高级的管道 () 要包含一些低级的管道 才能通向文件

对象如果要序列化,必须实现Serializable 序列化接口
存储后的文件不是乱码(中文都在),
package com.itheima.d5_serializable;import java.io.FileOutputStream;import java.io.ObjectOutputStream;/*** 目标: 学会对象序列化, 使用ObjectOutputStream 把内存中的对象存入到硬盘文件中*/public class ObjectOutputStreamDemo1 {public static void main(String[] args) throws Exception{// 1. 创建学生对象Student s = new Student("程磊","chenlei","123456",21);// 2. 对象序列化, 使用对象字节输出流包装字节输出流管道// 文件输出流是低级流 被对象字节输出流包装住, 文件输出流里面写路径(选择输出到哪)ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("io-app2/src/obj.txt"));// 3. 直接调用序列化方法oos.writeObject(s); // 先再该对象的类必须实现Serializable序列化接口// 4. 释放资源oos.close();System.out.println("序列化完成");}}
