对象序列化

原创 2006年06月06日 14:28:00

import java.io.*;
import java.io.Serializable;
/**
 *
 * <p>Title: 对象序列化</p>
 * <p>Description:
 *
1.并非所有类都可以序列化。在命令窗口下,可以通过serialver命令来检查一个类是否可以序列化。如输入serialver java.net.Socket,可以得到socket是否可序列化的信息,实际上socket是不可序列化的。
2.java有很多基础类已经实现了serializable接口,如String,Vector等。
3.如果某个类能够被序列化,其子类也可以被序列化。
4.声明为static和transient类型的成员数据不能被序列化。因为static代表类的状态, transient代表对象的临时数据。
5.读取序列化对象时,不会调用对象的任何构造函数甚至default构造函数,整个对象的状态全是通过InputStream所读的数据回复。
</p>
 * <p>Copyright: Copyright (c) 2005</p>
 * <p>Company: </p>
 * @author not attributable
 * @version 1.0
 */
class Student implements Serializable {
  private String sNO;
  private String sName;
  private String sSpecial;
  private int iAge;
  Student(String sNO, String sName, int iAge, String sSpecial) {
    this.sNO = sNO;
    this.sName = sName;
    this.sSpecial = sSpecial;
    this.iAge = iAge;
  }
}

public class Serial {
  public static void main(String[] args) throws IOException,
      ClassNotFoundException, IOException {
    /**
     *写文件
*/
    ObjectOutputStream ojectOut = new ObjectOutputStream(new FileOutputStream(
        "c:/student.dat"));
    Student student1 = new Student("S200106001", "李铭", 21, "经济管理");
    Student student2 = new Student("S200105001", "郝丽", 22, "外语");
    ojectOut.writeObject(student1);
    ojectOut.writeObject(student2);
    ojectOut.close();
    /**
     * 读文件
     */
    ObjectInputStream objectIn = new ObjectInputStream(new FileInputStream("c:/student.dat"));
    Student s1 = (Student)objectIn.readObject();
    Student s2 = (Student)objectIn.readObject();
    objectIn.close();
    System.out.println(s1);
     System.out.println(s2);
  }
}

PHP基础教程十三之反射、对象序列化

本节讲解的内容 对象的克隆 对象的遍历 对象的序列化和反序列化 内置标准类的使用 traits的使用 类和对象的相关函数 PHP反射机制...
  • li741350149
  • li741350149
  • 2016年10月11日 14:52
  • 963

Java 对象序列化机制详解

对象序列化的目标:将对象保存到磁盘中,或允许在网络中直接传输对象。 对象序列化机制允许把内存中的Java对象转换成平台无关的二进制流,从而允许把这种二进制流持久的保存在磁盘上,通过网络将这种二进制流...
  • zuiwuyuan
  • zuiwuyuan
  • 2014年10月09日 22:24
  • 1102

Java对象序列化成JSON对象

1、项目地址http://flexjson.sourceforge.net/ 2、使用项目首页有比较详细的说明 3、例子Person.javapackage org.bruceye.demo.flex...
  • yyhygp
  • yyhygp
  • 2009年01月10日 13:03
  • 4666

Java 对象序列化详解以及实例实现和源码下载

Java中的序列化机制有两种实现方式: 一种是实现Serializable接口 另一种是实现Externalizable接口 区别: 实现Serializable接口 1 系统自动储存必要的...
  • u010156024
  • u010156024
  • 2015年03月16日 16:45
  • 1485

java常用对象序列化对象性能简单比较

java常用的序列化手段有很多,包括 jdk Serialize、json、kryo、protobuf、xml等。在这里,我...
  • linsongze2011
  • linsongze2011
  • 2014年10月27日 17:18
  • 1388

对象序列化到文本并读取

import java.io.FileReader; import java.io.FileWriter; import java.io.ObjectInputStream; import...
  • xinyu0100
  • xinyu0100
  • 2010年07月28日 16:18
  • 473

C#对象序列化详解

C#中的序列化主要是通过一个格式化工具获取某个自定义类型对象中的所有数据成员并写入传入的一个文件流中,或者从文件流对象中               解析出某个自定义类型对象中的所有数据成员并赋值到...
  • u011390632
  • u011390632
  • 2013年12月08日 17:30
  • 1844

什么是对象序列化?如何实现?什么情况下使用?

a)什么是对象序列化: 对象序列化可以将一个对象保存到一个文件,可以将通过流的方式在网络上传输,可以将文件的内容读取转化为一个对象。所谓对象流也就是将对象的内容流化,可以对流化后的对象进行读写操作,也...
  • JimboWonG
  • JimboWonG
  • 2017年02月07日 14:41
  • 688

C#对象反序列化与对象序列化

C#对象反序列化与对象序列化 对象序列化的介绍 1、.net支持对象序列化的几种方式 二进制序列化  SOAP序列化  XML序列化 2、几种序列化的区别 二进制格式和SOAP格式可序列化一...
  • GaraMaps
  • GaraMaps
  • 2016年09月13日 20:02
  • 820

netty 对象序列化传输示例

package object.server.impl; import io.netty.bootstrap.ServerBootstrap; import io.netty.channel...
  • joeyon
  • joeyon
  • 2016年12月01日 18:05
  • 520
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章: 对象序列化
举报原因:
原因补充:

(最多只允许输入30个字)