首页 > 代码库 > JavaSE——序列化和反序列化
JavaSE——序列化和反序列化
序列化:
序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了更方便的对对象流进行存储和读的操作。
序列化的实现:将需要被序列化的类实现Serializable接口,该接口为一个标识接口,没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。
public class Person implements Seriaizable
ObjectOutputStream oos = new ObjectOutputStream(new FIleOutputStream(FIle file))
oos.writeObject(person)
package xulieh; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectOutputStream; public class Demo02 { public static void main(String[]args){ //序列化 Person person = new Person("张三", 20, "火星"); ObjectOutputStream oos = null; try { oos = new ObjectOutputStream(new FileOutputStream("D:/person2.dat")); oos.writeObject(person); oos.flush(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ try { oos.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }
JavaSE——序列化和反序列化
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。