什么是JAVA系列化?
作者:广州电脑培训刘发布时间:2020-09-21分类:深圳电脑学校浏览:706
大多数商业项目使用数据库或内存映射文件或仅使用普通文件来满足持久性要求。 只有少数项目依赖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软件工程师应具备哪些职业能力?
- 深圳电脑学校排行
- 最近发表
-
- 东莞信息:莞城开展重点群体及港澳青年人才创新创业交流活动|||计算机培训学校招生
- 湛江信息:奏响人才活力乐章!在湛青年才俊共赴一场音乐盛宴|||计算机网络培训学校
- 东莞信息:东坑东坑人社分局赴江口县开展劳务协作工作|||计算机软件培训学校
- 东莞信息:2024年东城街道模具工职业技能竞赛成功举办|||计算机培训机构
- 东莞信息:塘厦塘厦人社分局赴始兴县举办南粤家政技能培训活动|||计算机职业技能培训班
- 梅州信息:政策筑巢引凤来栖|||计算机网络培训学校
- 汕头信息:汕头市举办2024年航空服务与高技能人才培养研讨会|||计算机培训机构
- 江门信息:江门市人力资源和社会保障局下属事业单位党支部携手联动开展双报到双服务暖民心|||电脑计算机编程培训学校
- 河源信息:52名高校毕业生投身河源基层公共就业创业服务工作|||北大青鸟计算机培训中心
- 东莞信息:东坑东坑镇成功举办创业东莞沙龙助力创业者扬帆起航|||中专学计算机平面设计女生可以学计算机网络技术好吗
- 标签列表
-