首页 > 其他 > 详细

序列化

时间:2020-10-02 13:46:34      阅读:20      评论:0      收藏:0      [点我收藏+]

序列化

序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。

将java对象从文件中恢复称为 反序列化 DeSerializetion。

参与序列化和反序列化的对象必须实现Serializeable接口。

Serializeable只是一个标志性接口,java虚拟机看到了类实现了这个接口。jvm会默认提供这个序列化版本号。

当你想序列化多个对象,可以将多个对象装载到一个集合(或其他容器)。集合元素以及集合都需要实现Serializeable接口。

如果希望一些属性不参加序列化(不将数据存储到磁盘)。可以添加Transient属性。

java比较序列化对象的主要从两个方面来区分:

  1. 类名
  2. 序列化版本号

当实现了Serialize接口以后,java会自动生成序列化版本号。但是自动生成序列化版本号存在有缺点。

也就是不能修改类代码,因为单例修改了类代码之前序列化的对象会被认为和这个类不同,因为尽管类名相同,但是由于修改了类代码,序列化版本号被重新提供了。所以凡是实现了Serializable接口的类建议自己指定序列号版本号。

序列化

原文:https://www.cnblogs.com/freesfu/p/13760932.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!