A
anonym
Gast
Hallo,
ich habe eine abstrakte Klasse A, ein Interface B und zwei Klassen
"C extends A" und
"D extends A implements B"
Kann ich in einer Methode von A herausfinden, ob der Methodenaufruf auf einer Instanz von C oder einer von B stattfindet? Findet er auf D statt, soll eine Methode aus B aufgerufen werden. Ich dachte an sowas wie
das kompiliert so aber nicht. Gibt es eine Möglichkeit, das hin zu kriegen?
Vielen Dank schonmal,
anonym
PS: klar, ich kann eine Methode boolean hasB() machen und die in den Unterklassen überschreiben, aber SO toll ist das nicht...
ich habe eine abstrakte Klasse A, ein Interface B und zwei Klassen
"C extends A" und
"D extends A implements B"
Kann ich in einer Methode von A herausfinden, ob der Methodenaufruf auf einer Instanz von C oder einer von B stattfindet? Findet er auf D statt, soll eine Methode aus B aufgerufen werden. Ich dachte an sowas wie
Java:
if(this instanceof B){
...
}
das kompiliert so aber nicht. Gibt es eine Möglichkeit, das hin zu kriegen?
Vielen Dank schonmal,
anonym
PS: klar, ich kann eine Methode boolean hasB() machen und die in den Unterklassen überschreiben, aber SO toll ist das nicht...