Почему я не получаю исключение NullPointerException? [Дубликат]
Possible Duplicate:
Static fields on a null reference in Java
Я понимаю, что статические методы находятся на уровне класса. Так что я знаю, что мне не нужно создавать экземпляр для вызова статических методов. Но я также знаю, что я могу вызвать статический метод LIKE метод экземпляра. Это где я запутался, потому что я ожидалNullPointerException
при вызове статического метода из нулевого объекта (как при вызове метода экземпляра). Я был бы очень признателен за объяснение того, почему я ошибался, ожидаяNullPointerException
Вот.
Вот пример кода:
public class SampleClass {
public static int getSumStatic(int x, int y){
return x+y;
}
public int getDifferenceInstance(int x, int y){
return x-y;
}
}
public class TestClass {
public static void main (String[] args){
SampleClass sc=null;
System.out.println(SampleClass.getSumStatic(2, 2)); //as expected
//I was expecting NullPointerException in the next line, since I am accessing null object
System.out.println(sc.getSumStatic(4,5)); //static method , executes perfectly
System.out.println(sc.getDifferenceInstance(6,4));//throws NullPointerException
}
}