Hallo,
ausgehend von einer Superklasse habe ich mehrere Subklassen
In meinem Code bekomme ich nun einen Parameter SuperClass x übergeben der entweder SuperClass oder SubClass enthält.
Meine Frage ist nun: Ist es irgendwie möglich auf die Variablen und Methoden von x zuzugreifen, ohne ein down casting zu machen?
Fall: x instanceof SubClass: Könnte ich also x.abc() aufrufen oder auch x.neue_Variable = 5 setzen?
Hintergrund ist, dass ich sehr viele (unterschiedliche) Subklassen habe, bei welchen die Variablen und Funktionen fast durchgehend überschrieben werden (also identischer Name). Daher wäre es sehr praktisch, wenn ich nicht immer eine Fallunterscheidung machen müsste.
Daniel
ausgehend von einer Superklasse habe ich mehrere Subklassen
Java:
class SuperClass {
public void abc() {
// some code
}
}
class SubClass extends SuperClass {
public void abc() {
// überschreiben
}
int neue_Variable = 0;
}
In meinem Code bekomme ich nun einen Parameter SuperClass x übergeben der entweder SuperClass oder SubClass enthält.
Meine Frage ist nun: Ist es irgendwie möglich auf die Variablen und Methoden von x zuzugreifen, ohne ein down casting zu machen?
Fall: x instanceof SubClass: Könnte ich also x.abc() aufrufen oder auch x.neue_Variable = 5 setzen?
Hintergrund ist, dass ich sehr viele (unterschiedliche) Subklassen habe, bei welchen die Variablen und Funktionen fast durchgehend überschrieben werden (also identischer Name). Daher wäre es sehr praktisch, wenn ich nicht immer eine Fallunterscheidung machen müsste.
Daniel