区别 | Serializable | Externalizable |
---|---|---|
实现复杂度 | 实现简单,java对其有内建支持 | 实现复杂,由开发人员自己完成 |
执行效率 | 所有对象由java统一保存,性能较低 | 开发人员决定哪个对象保存,可能提高性能 |
保存信息 | 保存时占用空间大 | 部分存储,可能减少空间 |
使用频率 | 高 | 偏低 |
Externalizable接口继承了Serializable接口
Externalizable接口中定义了writeExternal和readExternal两个抽象方法,这两个方法对应了Serializable接口中的writeObject和readObject方法,可以这样理解:
Externalizable接口设计出来是为了抽象出writeObject和readObject两个方法