public class TestMain {
public static void methodTest(Exception e) {
System.out.println("Exception method called");
}
public static void methodTest(Object e) {
System.out.println("Object method called");
}
public static void methodTest(NullPointerException e) {
System.out.println("NullPointerException method called");
}
public static void main(String args[]) {
methodTest(null);
}
}
Ausgang: Nullpointer Methode namensMehrere überladene Methoden: Ist null gleich NullPointerException?
Was passiert, wenn Sie 'methodTest ((Objekt) null) verwenden;'? oder 'methodTest ((Exception) null);'? – MadProgrammer
Wenn methodTest ((Objekt) null) verwendet wird, dann ist die Ausgabe "Objektmethode aufgerufen". Wenn methodTest ((Exception) null) verwendet wird, dann ist die Ausgabe "Exception method called". –
Also 'null' ist keine' NullPointerException', warum der Compiler diese Methode aufruft, wenn der Aufruf mehrdeutig ist, weiß ich nicht. – MadProgrammer