Possible Duplicate:
What is the difference between Serializable and Externalizable in Java?
java中的序列化和外部化有什么区别?
最佳答案
基本上,Serializable
和Externalizable
之间的区别在于,对于实现Serializable
的类,对象的序列化将自动进行,而实现Externalizable
的类则负责自身的序列化,而无需使用默认序列化程序。
API规范中为Externalizable
接口和Serializable
接口提供了更多信息。从Externalizable
界面文档中:
只有一个班级的身份
可外部化的实例被写入
序列化流,它是
阶级救人的责任
并恢复其内容
实例。 writeExternal和
readExternal方法
可外部化的接口是
由一个类实现以赋予
类完全控制格式
和流的内容
对象及其超类型。
Discover the secrets of the Java Serialization API文章在“创建自己的协议:可外部化的接口”部分中的Externalizable
接口上进行了讨论。