读书人

用序列化(Serializable)保留、读取对

发布时间: 2012-11-15 15:16:14 作者: rapoo

用序列化(Serializable)保存、读取对象

?  实现Serializable借口的对象可以被转换成一系列字节,并可以在以后使用时完全恢复原来的样子。这一过程也可以在网络中进行,这样就可以先在windows机器上创建一个对象,对其序列化,然后通过网络发送给Linux机器,就可以在Linux机器上准确无误地恢复成原来的样子。整个过程不必关心数据在不同机器上如何表示,也不必关心字节的顺序或其他细节。

????? 序列化的思想就是“冻结”对象,操作对象(写到磁盘,通过网络传输等),然后“解冻”对象,重新获得可用的Java对象。功能的实现要靠ObjectInputStream/ObjectOutputStream类,完全保真原数据,并且开发愿意用Serializable。

???? 实现了Serializable接口的类为保证serialVersionUID 值跨不同 java 编译器实现的一致性,序列化类必须声明一个明确的 serialVersionUID 值。

?????ClassA.java

??? ClassB.java

write obj:a.toString <a.name=My name is a a.b.name=My name is b>

将文本内容还原给对象

ReadSeri.java

输出结果:

a.toString <a.name="My name is a" a.b.name="My name is b">
read object:a.toString <a.name=My name is a a.b.name=My name is b>

?

?

?

?

读书人网 >编程

热点推荐