Java序列化知识点有哪些

本篇内容主要讲解“Java序列化知识点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java序列化知识点有哪些”吧!

成都创新互联公司公司2013年成立,公司以成都做网站、网站建设、外贸营销网站建设、系统开发、网络推广、文化传媒、企业宣传、平面广告设计等为主要业务,适用行业近百种。服务企业客户上1000家,涉及国内多个省份客户。拥有多年网站建设开发经验。为企业提供专业的网站建设、创意设计、宣传推广等服务。 通过专业的设计、独特的风格,为不同客户提供各种风格的特色服务。

概况

  • 序列化时将 Java 对象相关的类信息、属性及属性值等等保存起来,反序列化时再根据这些信息构建出 Java 对象。

  • Java 中进行序列化操作需要实现 Serializable 或 Externalizable 接口。

序列化的作用

  • 提供一种简单又可扩展的对象保存恢复机制。

  • 对于远程调用,能方便对对象进行编码和解码,就像实现对象直接传输。

  • 可以将对象持久化到介质中,就像实现对象直接存储。

  • 允许对象自定义外部存储的格式。

serialVersionUID的作用

主要用于验证版本一致性,每个类都拥有这么一个 ID,在序列化的时候会一起被写入流中,那么在反序列化的时候就被拿出来跟当前类的 serialVersionUID 值进行比较,两者相同则说明版本一致,可以序列化成功,而如果不同则序列化失败。

private static final long serialVersionUID = 1234567890L;

父类序列化

如果一个子类实现了 Serializable 接口而父类没有实现该接口,则在序列化子类时,子类的属性状态会被写入而父类的属性状态将不被写入。所以如果想要父类属性状态也一起参与序列化,就要让它也实现 Serializable 接口。

另外,如果父类未实现 Serializable 接口则反序列化生成的对象会再次调用父类的构造函数,以此完成对父类的初始化。所以父类属性初始值一般都是类型的默认值。

Externalizable 接口作用

Externalizable 接口主要提供自定义序列化方式,继承 Serializable 接口,提供了 writeExternal 和 readExternal 两个方法控制序列化和反序列化的内容。

序列化控制

  1. 默认情况下所有字段都会被序列化

  2. 静态字段不会被序列化

  3. transient关键字修饰字段不会被序列化

  4. 可通过ObjectStreamField数组来声明类需要序列化的字段

到此,相信大家对“Java序列化知识点有哪些”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


分享题目:Java序列化知识点有哪些
文章源于:http://scyanting.com/article/ijhjhd.html