Zitat von
Bowler:
nun ist Wurzel vom Typ TKnoten auch in den abgeleiteten Klassen sichtbar.
Ja, aber immer nur noch als TKnoten-Objekt!!
Zitat von
mytar:
Muss ich Wurzel: TNewKnoten üverhaupt in TMyNewList neu implementieren, oder kann ich Wurzel von TMyList irgendwie manipulieren?
Du musst folgendes bedenken, wenn eine Methode aus TMyList aufgerufen wird und auf Wurzel zugegriffen wird, dann ist das ein TKnoten-Objekt, ist die Methode aber in der TMyNewList, dann ist Wurzel ein TNewKnoten-Objekt, beides sind
unterschiedliche und unabhängige Objekte. Du könntest natürlich versuchen, das neue Wurzel-Objekt über eine Property auf das alte zeigen zu lassen (vorrausgesetzt, du beachtest den Rat von Bowler):
Delphi-Quellcode:
function TMyNewList.GetWurzel: TNewKnoten;
begin
Result := Wurzel;
// Eigenschaften kopieren...
Result.Irgendwas := TMyList(Self).Wurzel.Irgendwas;
// vielleicht geht sogar Result.Irgendwas := inherited Wurzel.Irgendwas oder so ähnlich???
end;