Hallo,
ich habe folgendes Problem:
Ich habe drei Klassen, die von einer Superklasse erben.
Die drei Subklassen unterscheiden sich nur durch die implementierten Methoden.
Ich möchte also wenn ich eine der drei Subklassen instanziiere, nur deren Methoden aufrufen können und nicht die der anderen zwei.
Das funktioniert auch soweit.
Nun möchte ich aber Instanzen aller drei Subklassen in einem Array oder ähnlichem ablegen um leichter darauf zuzugreifen.
Dazu habe ich mir (zum Beispiel) ein Array vom Typ der Superklasse angelegt und die einzelnen Elemente des Arrays vom Typ der Subklassen deklariert.
Wenn ich nun auf die Arrayelemente zugreife, kann ich immer nur auf die Methoden der Superklasse zugreifen und nicht auf die speziellen Methoden der Subklassen.
Diese speziellen Methoden sind ja aber nicht in der Superklasse definiert.
Wo ist mein Denkfehler?
Gruß, Alex
ich habe folgendes Problem:
Ich habe drei Klassen, die von einer Superklasse erben.
Die drei Subklassen unterscheiden sich nur durch die implementierten Methoden.
Ich möchte also wenn ich eine der drei Subklassen instanziiere, nur deren Methoden aufrufen können und nicht die der anderen zwei.
Das funktioniert auch soweit.
Nun möchte ich aber Instanzen aller drei Subklassen in einem Array oder ähnlichem ablegen um leichter darauf zuzugreifen.
Dazu habe ich mir (zum Beispiel) ein Array vom Typ der Superklasse angelegt und die einzelnen Elemente des Arrays vom Typ der Subklassen deklariert.
Wenn ich nun auf die Arrayelemente zugreife, kann ich immer nur auf die Methoden der Superklasse zugreifen und nicht auf die speziellen Methoden der Subklassen.
Diese speziellen Methoden sind ja aber nicht in der Superklasse definiert.
Wo ist mein Denkfehler?
Gruß, Alex