smi*_*bbu -2 java serialization
当一个类[说A]被序列化时,所有扩展A的子类都将被序列化.假设在类A被扩展2000个类的情况下,序列化对象包含所有子类对象.通过从子类重写"private void writeObject",我们完全消除了父对象的序列化.请确认.
谢谢和问候,Subbu
当一个类[说A]被序列化时,所有扩展A的子类都将被序列化
不,只要保持序列化的一般合同,类A及其实例变量将被序列化.
假设在类A被扩展2000个类的情况下,序列化对象包含所有子类对象.
类的序列化表示确实 包含有关其超类型的信息.但不是它的子类.
通过从子类重写"private void writeObject",我们完全消除了父对象的序列化.请确认.
不,覆盖private void writeObject不会阻止父对象被序列化.参考Javadoc:
writeObject方法负责为其特定类编写对象的状态,以便相应的readObject方法可以恢复它.该方法不需要关注属于对象的超类或子类的状态.