`
dickyzhu
  • 浏览: 107342 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

java的对象序列化

阅读更多
java的对象序列化将那些实现了Serializable接口的对象转换成一个字节序列,并能够在以后将这个字节序列完全恢复为原来的对象。

在对一个Serializable对象进行还原的过程中,没有调用任何构造器,包括默认的构造器。整个对象都是通过从InputStreamuserName中取得数据恢复而来的。

对于Serializable对象,对象完全以它存储的二进制位为基础来构造,而不调用构造器。而对于一个Externalizable对象,所有普通的默认构造器都会被调用,然后调用readExternal()。

将一个对象从它的序列化状态中恢复出来,,必须保证java虚拟机能找到相关的.class文件。

只要将任何对象序列化到单一流中,就可以恢复出于我们写出是一样的对象网,并且没有任何意外重复复制出的对象。

如果我们想保存系统状态,最安全的做法是将其作为原子操作进行序列化。如果我们序列化了某些东西,再去做其他的一些工作,再来序列化更多的东西,如此等等,那么将无法安全地保存系统状态。取而代之的是,将构成系统状态的所有对象都置于单一容器内,并在一个操作中将该容器直接写出,然后同样只需一次方法调用,即可以将其恢复。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics