zoukankan      html  css  js  c++  java
  • 对象序列化

    一、对象序列化:

    对象序列化,是指将一个对象转换为二进制的数据流。如果一个类的对象要实现序列化,则对象所在的类必须实现Serializable接口。

    如果要想完成对象序列化,则还要依靠ObjectOutputStream和ObjectInputStream类,前者属于序列化,后者是反序列化。

    二、代码示例:

    创建一个可序列化的类:

    import java.io.Serializable;

    public class Person implements Serializable {

       private String name;

       private int age;

       public Person(String name,int age){

         this.name=name;

         this.age=age;

       }

       private static final long serialVersionUID = 1L;

       public String toString(){

         return this.name+"="+this.age;

       }

    }

    进行序列化写入文件:

    import java.io.FileOutputStream;

    import java.io.ObjectOutputStream;

    public class TestDemo {

       public static void main(String[] args) throws Exception{

         // TODO Auto-generated method stub

         ObjectOutputStream out=new ObjectOutputStream(

              new FileOutputStream("c:/ser.txt"));

         Person p=new Person("guoxu",25);

         out.writeObject(p);

         out.close();

       }

    }

    反序列化操作:

    import java.io.*;

    public class TestDemo2 {

       public static void main(String[] args) throws Exception{

         // TODO Auto-generated method stub

         ObjectInputStream out=new ObjectInputStream(

              new FileInputStream("c:/ser.txt"));

         Object obj=out.readObject();

         Person p=(Person)obj;

         System.out.println(p.toString());

         out.close();

       }

    }

    无论序列化,还是反序列化,都要求有原型类存在。

  • 相关阅读:
    C++常用库函数
    ejabberd组成模块
    TCP/IP协议栈的基本工作原理
    erlang ets表
    erlang lists模块函数使用大全
    erlang-string
    erlang四大behaviour之四-supervisor
    erlang四大behaviour之三-gen_event
    erlang四大behaviour之二-gen_fsm
    erlang四大behaviour之一gen_server
  • 原文地址:https://www.cnblogs.com/itfenqing/p/4429541.html
Copyright © 2011-2022 走看看