什么是JAVA系列化?
作者:广州电脑培训刘发布时间:2020-09-21分类:深圳电脑学校浏览:646
大多数商业项目使用数据库或内存映射文件或仅使用普通文件来满足持久性要求。 只有少数项目依赖Java中的序列化过程。 无论如何,本文都不是Java序列化教程,也不是如何在Java中序列化对象,而是采访有关序列化机制和序列化API的问题。对于不熟悉Java序列化的人,Java序列化是用于通过将对象的状态存储在扩展名为.ser的文件中来序列化Java中的对象的过程,并且可以通过此文件状态还原和重建Java对象。 ,此反向过程称为反序列化。
那么什么是Java序列化?序列化是将对象更改为二进制格式的过程,该二进制格式可以通过网络保存到磁盘或发送给其他正在运行的Java虚拟机,并且可以通过反序列化来恢复对象的状态。 Java序列化API通过java.io.Serializable和java.io.Externalizable接口为开发人员提供了标准的机制,ObjectInputStream和ObjectOutputStream处理对象序列化。 Java程序员可以根据类结构或其自定义二进制格式自由选择标准序列化,通常将后者视为后者。这是最佳做法,因为序列化的二进制文件格式已成为类输出API的一部分,这可能会破坏封装 Java中私有和包可见的属性的集合。
我们又该怎么去序列化?让Java 中的类可以序列化很简单. 你的 Java 类只需要实现 java.io.Serializable 接口, JVM 就会把 Object 对象按默认格式序列化. 让一个类是可序列化的需要有意为之. 类可序列会可能为是一个长期代价, 可能会因此而限制你修改或改变其实现. 当你通过实现添加接口来更改类的结构时, 添加或删除任何字段可能会破坏默认序列化, 这可以通过自定义二进制格式使不兼容的可能性最小化, 但仍需要大量的努力来确保向后兼容性。序列化如何限制你更改类的能力的一个示例是 SerialVersionUID。
如果不显式声明 SerialVersionUID, 则 JVM 会根据类结构生成其结构, 该结构依赖于类实现接口和可能更改的其他几个因素。假设你新版本的类文件实现的另一个接口, JVM 将生成一个不同的 SerialVersionUID 的, 当你尝试加载旧版本的程序序列化的旧对象时, 你将获得无效类异常 InvalidClassException。
- 上一篇:如何去学GO语言?
- 下一篇:Java软件工程师应具备哪些职业能力?
- 深圳电脑学校排行
- 最近发表
-
- 阳江信息:市人社局突出就业优先导向确保就业局势保持稳定一季度全市城镇新增就业4182人|||广州市北大青鸟计算机职业培训学校
- 汕头信息:近距离感受飞机维修,高层次人才走进汕头市民用航空职业技能培训学院|||电脑计算机编程培训学校
- 东莞信息:东坑人社分局组织辖区企业参加2024年校企合作洽谈会|||计算机网络培训学校
- 东莞信息:东坑镇开展“就莞用”欠薪反映平台推广宣传活动|||计算机网络培训学校
- 汕尾信息:第六届“中国创翼”创业创新大赛广东选拔赛正式启动|||计算机软件培训学校
- 东莞信息:2024年东莞市(第十五届)校企洽谈会石排分会场暨院校“访企拓岗”活动顺利举行|||电脑计算机编程培训学校
- 东莞信息:(沙田)2024年东莞市校企合作洽谈暨“访企拓岗”沙田分会场活动顺利开展|||广州学电脑培训学校
- 东莞信息:(樟木头)樟木头新增两家省级博士工作站|||计算机职业技能培训班
- 东莞信息:(樟木头)樟木头镇开展人才周末活动|||广州计算机编程培训
- 东莞信息:东坑镇优才服务区开展人才政策指导活动|||广州计算机软件培训
- 标签列表
-