如果我们实现Serializable,我们不需要它.那为什么会有这样的区别?它与串行化的实际机制有什么关系?
解决方法
一个彻底的解释(尽管文章的语法可能会改善)可以在
http://www.jusfortechies.com/java/core-java/externalization.php找到.简短的答案,以供将来参考,以防万一链接页面消失:
Externalizable是一个扩展Serializable的接口.与Serializable相反,虽然通过读取序列化的字节流不能恢复对象,但是调用公共构造函数,只有一旦对象被创建,它的状态就被恢复.这使恢复更有效率.
编辑:另见What is the difference between Serializable and Externalizable in Java?.