Por que não estou recebendo o NullPointerException? [duplicado]

Duplicata Possível:
Campos estáticos em uma referência nula em Java

Eu entendo que os métodos estáticos estão no nível de classe. Portanto, estou ciente de que não preciso criar uma instância para chamar métodos estáticos. Mas também estou ciente de que posso chamar o método estático LIKE de um método de instância. Isto é onde eu estou confuso, porque eu estava esperando umNullPointerException enquanto chama o método estático do objeto nulo (como no método de instância de chamada). Eu realmente aprecio alguma explicação sobre por que eu estava errado em esperar umaNullPointerException Aqui.

Aqui está o código de exemplo:

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
    }
}