Hallo zusammen,
ich habe derzeit folgende Struktur:
Delphi-Quellcode:
type
TElternklasse = class
protected
procedure VerarbeiteWerte;
procedure InitialisiereNeustart;
end;
type
TZwischenklasse = class (TElternklasse)
end;
type
TKindklasse = class (TZwischenklasse)
proctected
procedure InitialisiereNeustart;
end;
procedure TElternklasse.VerarbeiteWerte;
begin
//Verarbeitung...
InitialisiereNeustart;
end;
procedure TElternklasse.InitialisiereNeustart;
begin
//Initialisierung...
end;
procedure TKindklasse.InitialisiereNeustart;
begin
inherited;
//Mache noch mehr.
end;
Das klappt aber nicht. TKindklasse.InitialisiereNeustart wird niemals aufgerufen, was ja auch durchaus Sinn ergibt, da die Elternklasse die Methode der Kindklasse nicht kennt, oder?
Ich habe nun überlegt, in der Elternklasse eine abstrakte Methode zu deklarieren, die in TElternklasse.InitialisiereNeustart aufgerufen und in der Kindklasse implementiert wird.
Das erscheint mir aber unschön, daher meine Frage: Ließe sich das eleganter umsetzen?