Einzelnen Beitrag anzeigen

Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#5
  Alt 26. Feb 2003, 12:21
I ist ja nicht von Typ TMyClass sondern von Typ ICombo. ICombo war definiert als
Delphi-Quellcode:
type
  ICombo = interface(IFoo, IBar)
     procedure ChewBubbleGum;
  end;
und erbt daher die Methoden von IFoo und IBar. Sowohl IFoo als auch IBar deklarieren die Methode Hello. Ein Aufruf von I.Hello wäre jetzt nicht eindeutig. Ist jetzt IFoo.Hello oder IBar.Hello gemeint. Dabei ist es uninteressant, das beide Methoden in der Klasse TMyClass auf die selbe Methode verweisen, da das auch weiterhin nicht zwingend der Fall ist. TMyClass könnte theoretisch auch wie folgt deklariert sein, dadurch würde jedes Interface eine eigene Methode innerhalb von TMyClass "besitzen".

Delphi-Quellcode:
  TMyClass = class(TObject, ICombo)
     procedure IFoo.Hello = FooHello;
     procedure IBar.Hello = BarHello;
     procedure FooHello;
     procedure BarHello;
     procedure Walk;
     procedure Talk;
     procedure ChewBubbleGum;
  end;
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat