staticJava 中的成员(static字段或static方法)与其各自的类相关联,而不是与此类的对象相关联。以下代码尝试访问null引用上的静态字段。
public class Main
{
private static final int value = 10;
public Main getNull()
{
return null;
}
public static void main(String[] args)
{
Main main=new Main();
System.out.println("value = "+main.getNull().value);
}
}
虽然main.getNull()返回null,但它可以工作并显示value = 10。这段代码是如何工作的?