欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java中对象的序列化详解及实例

程序员文章站 2024-03-01 15:09:04
 java中对象的序列化详解及实例 把java对象转化为字节序列的过程称为对象的序列化。 把字节序列恢复为java对象的过程称为对象的反序列化。 对...

 java中对象的序列化详解及实例

把java对象转化为字节序列的过程称为对象的序列化。

把字节序列恢复为java对象的过程称为对象的反序列化。

对象序列化的用途:

1.把对象的字节序列永久的保存到硬盘上,通常存放在一个文件中
2.在网络上传送对象的字节序列化

 void writeobject(object obj) 方法可对参数指定的obj对象进行序列化,把得到的字节序列写到一个目标输出流中(将指定的对象写入 objectoutputstream。)

 void readobject()方法 从一个源输入流中读取字节序列,再把它们反序列化为一个对象,并将其返回( 从 objectinputstream 读取对象。)

只有实现了serializable和externalizable接口的类对象才能被序列化。

externalizable接口继承自serializable接口,实现externalizable接口的类完全由自身来控制序列化的行为,而实现serializable接口类可以采用默认的序列化方式

public static void readobj()throws exception
  {
    objectinputstream ois = new objectinputstream(new fileinputstream("obj.txt"));

    person p = (person)ois.readobject();

    system.out.println(p);
    ois.close();
  }

 public static void writeobj()throws ioexception
  {
    objectoutputstream oos = 
      new objectoutputstream(new fileoutputstream("obj.txt"));

    oos.writeobject(new person("lisi0",399,"kr"));

    oos.close();
  }

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!