有一天,我们遇到了由于NPE导致应用程序崩溃的事件。我发现它崩溃的地方,但我不能确定它为什么会发生。
粗略地说,假设我有一个类 A ,它同时出现一个spring bean。这个类有一个字段属性,它明确地实例化(是的,我知道它听起来像)和一个方法 propertyUser ,它使用这个字段:
class A {
private ObjectClass property = new ObjectClass();
public void propertyUser() {
property.action();
}
....
getter\setter for property
}
经过一段时间的常规工作后,属性字段变为null,从而导致NPE来自 propertyUser 方法。 我更改了这个遗留代码,现在这个属性也是通过spring容器分配的,但是我确实需要确保这是出现此错误的原因。
如果有人能给我一个提示,我会很高兴。