Статические поля на нулевой ссылке в Java
static
члены (static
поля илиstatic
методы) в Java связаны с их соответствующим классом, а не объектами этого класса. Следующий код пытается получить доступ к статическому полю на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
, Как работает этот код?