JAVA中对象的序列化

java


什么是序列化?
JAVA在运行时环境用来支持用户定义类型的流化的机制。它是将对象实例的状态存储到存储媒体的过程。在此过程中,先将对象的公共字段和私有字段以及类的名称(包括类所在的程序集)转换为字节流,然后再把字节流写入数据流。在随后对对象进行反序列化时,将创建出与原对象完全相同的副本。

序列化的目的:
1、以某种存储形式使自定义对象持久化;
2、将对象从一个地方传递到另一个地方。

java中处处体现着简单的程序设计风格,序列化作为最常用的功能之一,在java中的设计尤为“简单”。通过ObjectInputStream 和ObjectOutputStream两个类,我们可以很轻松的实现序列化。

  只要我们的class 实现了java.io.Serializable接口,就可以利用ObjectOutputStream的writeObject()方法将一个对象序列化到文件或字符流;同时利用ObjectInputStream的readObject()方法,就可以从文件或字符流里读出的object对象。Serializable接口不需要我们实现任何方法。

  下面是一个比较简单的把对象序列化到文件保存,再从文件反序列化读出并调用的例子。让我们来看一下整个过程:

  Staffer实现了java.io.Serializable接口,成为一个可序列化的类。我们首先构造一个Staffer的对象Staffer1然后将其保存(序列化)在一个文件中,而后再将其读出(反序列化),并调用其toString方法打印内容。


package test.code;

import java.io.*;

}

以上是 JAVA中对象的序列化 的全部内容, 来源链接: utcz.com/z/392635.html

回到顶部