java – 为什么实现Externalizable需要默认的公共构造函数?

如果我们实现Serializable,我们不需要它.那为什么会有这样的区别?它与串行化的实际机制有什么关系?

解决方法

一个彻底的解释(尽管文章的语法可能会改善)可以在 http://www.jusfortechies.com/java/core-java/externalization.php找到.简短的答案,以供将来参考,以防万一链接页面消失:

Externalizable是一个扩展Serializable的接口.与Serializable相反,虽然通过读取序列化的字节流不能恢复对象,但是调用公共构造函数,只有一旦对象被创建,它的状态就被恢复.这使恢复更有效率.

编辑:另见What is the difference between Serializable and Externalizable in Java?.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...