Reflection Frage

Ich habe mir eine kleine Helper methode geschrieben, um jeweils zwei Objekte desselben Typs zu vergleichen:

static boolean compare(Object o1, Object o2) {
 if (o1 == null && o2 == null) {
 return true;
 } else if ((o1 == null && o2 != null) || (o1 != null && o2 == null)) {
 return false;
 } else {
 return o1.equals(o2);
 }
 }

bei der Zeile
return o1.equals(o2);
erwarte ich eigentlich, dass die equals Methode der Klassen, die ich der Methode übergeben habe, aufgerufen werden.
Es wird aber immer die Object.equals() Methode aufgerufen.

Wie kriege ich es per Reflection hin, dass die „richtige“ equals Methode aufgerufen wird.
Sämtliche Typen, die ich dieser Methode übergebe, haben die equals Methode überschrieben…

Sämtliche Typen, die ich dieser Methode übergebe, haben die
equals Methode überschrieben…

Wirklich equals(Object) oder doch eher equals(DeineKlasse)?
Mit der Art hier wird equals(Object) gerufen, falls vorhanden.

Sämtliche Typen, die ich dieser Methode übergebe, haben die
equals Methode überschrieben…

Wirklich equals(Object) oder doch eher equals(DeineKlasse)?
Mit der Art hier wird equals(Object) gerufen, falls vorhanden.

ja, du hast natürlich völlig recht. Ich hatte nicht überall equals(Object) überschrieben…
Danke