第一次发博客:新人报道
一、序列化的作用:就是将对象转换为字节序列
反序列化的作用:就是将我们的字节序列恢复成为java对象的一个过程。
1、序列化最重要的作用:
在传递的过程中他保证了对象的完整性和一致性。对象转换为有序的字节流,可以有序的保存在本地和网上。
2、反序列化的最重要的作用:
可以根据我们的序列化的字节流,通过反序列化来重建我们的java对象。
总结:核心作用就是对象状态的保存和重建。(整个过程核心点就是字节流中所保存的对象状态及描述信息)
序列化的实现:
将需要被序列化的类实现 Serialize 接口,没有需要实现的方法,此接口只是
为了标注对象可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个
ObjectOutputStream(对象流)对象,再使用 ObjectOutputStream 对象的 write(Object obj)方法,就可以将参数 obj 的对象写出。
代码如下:
//序化一个对象
Student student=new Student(66666);
FileOutputStream fos = new FileOutputStream("file.text");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(student);
oos.flush();
oos.close();
//反序列化,通过这个文件来反序列化
FileInputStream fis = new FileInputStream("file.text");
ObjectInputStream ois=new ObjectInputStream(fis);
Student o = (Student) ois.readObject();
ois.close();
System.out.println(o+"得到了6666");