查看与此问题类似的示例代码:
public class A {
public static void main(String args[]){
A a = new A();
System.out.println(a.equals((a = null)));
}
}
这打印错误。为什么它不会因 NullPointerException 而失败?必须在 equals 方法运行之前处理分配,但是在评估整行之前,这不会影响调用 equals 的引用吗?
我没有看到它在 Java 语言规范中的哪个地方描述了这一点,我是否在某个地方错过了它?