Ermitteln der erweiterten Schnittstellen einer Klasse
Ich muss feststellen, ob ein Klassenobjekt, das eine Schnittstelle darstellt, eine andere Schnittstelle erweitert, dh:
package a.b.c.d;
public Interface IMyInterface extends a.b.d.c.ISomeOtherInterface{
}
gemäßdie spezifikation Class.getSuperClass () gibt null für ein Interface zurück.
Wenn diese Klasse entweder die Object-Klasse, eine Schnittstelle, einen primitiven Typ oder void darstellt, wird null zurückgegeben.
Daher wird das Folgende nicht funktionieren.
Class interface = Class.ForName("a.b.c.d.IMyInterface")
Class extendedInterface = interface.getSuperClass();
if(extendedInterface.getName().equals("a.b.d.c.ISomeOtherInterface")){
//do whatever here
}
irgendwelche Ideen?