首先什么叫序列化和反序列化?
序列化:将对象转化为字节的过程。
反序列化:将字节/文件转为对象过程。
作用:
这样可以永久存储,文件,数据库,远程传输,你不可能把内存传输或者保存的吧?
Java序列化:
Java想要对类实现序列化,首先要实现一个接口(Serializable),不然会报错哦。
序列化首先要有这个对象(这个对象已经被实例化了),我们这里new了一个学术类
Student s=new Student();
s.setAge(22);
s.setName("小明");
其次,我们开始序列化,想要永久保存,需要用到IO流(而且是对象流):
ObjectOutputStream o=new ObjectOutputStream(new FileOutputStream(new File("./Student")));
o.writeObject(s);
到这里我们的序列化已经完成了。打开这个文件:
Java反序列化: