Что произойдет при попытке выполнения данного кода:
class Mountain {
  static String name = "Himalaya";
  static Mountain getMountain() {
    System.out.println("Getting Name ");
    return null;
  }
  public static void main(String[ ] args) {
    System.out.println( getMountain().name );
  }
}
Explanation
Для всех static полей и методов компилятор заменяет название объекта на название класса, и во время выполнения уже не имеет никакого значения, была ссылка нулевой или нет.
То есть mountain.name меняется на Mountain.name.

Follow CodeGalaxy

Mobile Beta

Get it on Google Play
Send Feedback
Keep exploring
Java quizzes
Cosmo
Sign Up Now
or Subscribe for future quizzes