Geben Sie order mit überladenen Methoden in Java ein
Bei zwei Methoden für dieselbe Klasse in Java:
public void doSomething( Person person );
public void doSomething( Employee employee );
woher
Employee extends Person
Wenn ich anrufe:
doSomething( employee )
Ich finde, dassdoSomething( Person )
wird aufgerufen.
Ich hätte erwartet, dass die Überladung mit dem am besten passenden Vertrag aufgerufen wird, nicht mit dem abstraktesten (was ich finde).
Könnte jemand erklären warum?