JDK1.1源码学习之Serializable官方实例解析
还记得之前整理官方文档吗,
JDK 5 Documentation
在J2SEAPI 里面有一个Serialization
模块,我们点击去看看是什么。
JDK 5.0 与序列化相关的 API
1. 对象序列化
对象序列化扩展了核心 Java 输入/输出类。对象序列化支持将对象以及可从它们访问的对象编码转换为字节流;并且它还支持从流中将对象进行反序列化。序列化用于轻量级持久性以及通过套接字(socket)或远程方法调用 (RMI) 进行通信。对象的默认编码保护私有数据和瞬态数据,并支持类的演变。类可以实现自己的外部编码,然后单独负责外部格式。
序列化现在包括一个 API,该 API 允许独立于类的字段指定对象的序列化数据,并允许使用现有协议将这些序列化数据字段写入流和从流中读取,以确保与默认写入和读取机制的兼容性。
这里是翻译文档原文的内容,从中我们知道序列化的作用主要有三个:轻量级持久性以及通过套接字(socket)或远程方法调用 (RMI) 进行通信。那么我们来看看官方给的实例吧。
上面的实例包括如下:
- 对套接字使用序列化
- 将序列化与自定义数据格式结合使用
- 对超类使用序列化:
- 使用不可序列化超类进行序列化
- 使用可外化超类进行外部化
- 使用不可外部化超类进行外部化
- 将序列化与演进结合使用:
- 序列化和演进
- 外部化与进化
- 序列化、演进和添加新的超类
- 序列化、演变和可序列化字段 API
- 使用可序列化类的替换
我会按照官方的顺序整理如下实例,可能更新会比较慢,催更请及时留言哟~
序号 | 内容 | 更新时间 |
---|---|---|
实例一 | Sockets | |
实例二 | Custom Data Format | |
实例三 | NonSerializable Superclass | |
实例四 | Externalizable Superclass | |
实例五 | NonExternalizable Superclass | |
实例六 | Superclass | |
实例七 | Serialization and Evolution | |
实例八 | Externalization and Evolution | |
实例九 | addition of a new SuperClass | |
实例十 | Serializable Fields API | |
实例十一 | Substitution |