2015-12-22 106 views
1

在反序列化期间,在从输入流中恢复任何类实例对象之前,是否保证子类被初始化?具体来说,我有一个静态字段的子类,我想在超类readObject()方法中访问。我可以指望子类静态字段有效吗?java反序列化期间类初始化的顺序

回答

1

我不是BNF的专家,但protocol spec系列化

classDescInfo: 
    classDescFlags fields classAnnotation superClassDesc 

显示,超信息来自类信息。所以看起来你可以依赖你的子类静态字段。

+0

正确答案,误导性推理。即使协议定义不同,在创建实例之前,您始终保证有一个已初始化的类(除非您在类初始化程序本身中创建实例)。 – Holger