public class Null {
public static void greet() {
System.out.println("Hello world!");
}
public static void main(String[] args) {
((Null) null).greet();
}
}
Wyjście programu: Hello world!
.
Myślałem, że to rzuci NullPointerException
.Dlaczego nie powoduje to wyjątku NullPointerException?
Dlaczego to się dzieje?
Such oczu boli kodu - dlaczego o, dlaczego chcesz to zrobić? – JonH
'.greet()' jest metodą 'statyczną', więc nie ma dostępu do instancji klasy. Musi jedynie znać typ obiektu ('Null'). – cheeken