报告在对象构造期间对当前类的重写方法的任何调用。
如果位于以下对象中,则会在对象构造期间调用:
- 构造函数
- 非 static 实例初始值设定项
- 非 static 字段初始值设定项
克隆()
readObject()
readObjectNoData()
此类调用可能会导致难以捉摸的错误,因为不能保证对象在方法调用发生之前被初始化。
示例:
abstract class Parent {
void someMethod() { }
}
class Child extends Parent {
Child() {
someMethod();
}
@Override
void someMethod() { }
}
此检查与以下各项共享其功能:
- 对象构造期间调用的 Abstract 方法检查
- 对象构造期间调用的 Overridable 方法检查
一次只应启用一个检查,以防止重复警告。