说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

关于序列化

编辑:说三道四文库 发布时间:2018-07-18 11:52
HTML文档下载 WORD文档下载 PDF文档下载
有没有人给我讲一讲序列化是怎么一回事啊,我对序列化的用途不了解
http://www.iplab.is.tsukuba.ac.jp/~liuxj/jdk1.2/zh/docs/guide/serialization/
为了可以实现远程接口。
为了传输或保存对象.
有没有更多的帮助啊
读写序列化类的例子

目的: 保存序列化类到文件,然后从文件中读取保存的序列化类
概念: 序列化类: 所谓序列化类,实际上就是将类本身所有信息变成流格式进行保存传输等功能.这点对于远程调用(RMI)非常
重要.可以将序列化类变成流格式通过网络传送到远端,再由远端进行"组装"恢复成和本地一样的情况而远端预先不需要知道任何
情况. 
代码: Test_Ser.java

import java.util.Vector;
import java.io.*;

public class Test_Ser
{
public static void main(String[] args) throws Exception
{
Vector v = new Vector(); // 生成一个向量表
v.add(new String("Test String"));// 增加一个字符串对象

FileOutputStream ostream = new FileOutputStream("d:\\test.ser");// 构造文件输出流
ObjectOutputStream p = new ObjectOutputStream(ostream);// 绑定

p.writeObject(v); // 输出继承了序列化接口的类
p.flush();
p.close();
ostream.close();

v.clear(); // 清空向量表,此时的v.size()应该为0

FileInputStream istream = new FileInputStream("d:\\test.ser"); // 构造文件输入流
ObjectInputStream pr = new ObjectInputStream(istream); // 绑定
v = (Vector)pr.readObject(); // 读入序列化的类
istream.close();

System.out.println("v.size()="+v.size()); //验证读入类的正确性
System.out.println("v.get(0)="+(String)v.get(0));
}
}
说明:Vector类是继承了Serializable接口的.这个接口就是实现序列化的接口.我们需要序列化的类其实只要简单地继承一下Serializable接口就可以进行保存传输等工作. 
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘