Zitat:
Das geht sogar noch weiter: Sollten beide Klassen eine Methode des Interfaces implementieren, dann hat die Implementation der Wrapper-Klasse Vorrang.
Delphi-Quellcode:
type
IMyInterface = interface
procedure Foo;
procedure Bar;
end;
TMyClass = class
protected
procedure Foo;
procedure Bar;
end;
TMySuperClass = class(TInterfacedObject, IMyInterface)
private
FMyClass: TMyClass;
function GetMyClass: TMyClass;
protected
procedure Bar; // hat Vorrang for MyClass.Bar
property MyClass: TMyClass read GetMyClass implements IMyInterface;
public
destructor Destroy; override;
end;
Ja das ist schon interessant, aber in meinen Augen auch nicht sehr übersichtlich. Versuch das mal einem nicht Delphianer beizubringen.
Wenn das property auch als interface deklariert wird gewinnt das property...
Muss man wissen oder leidvoll erfahren.