Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#2

AW: Vererbung bei Interfaces - Gut oder schlecht?

  Alt 27. Jan 2014, 12:05
Interfaceverergung bringt, meiner Meinung nach, nur etwas, wenn das nachvolgende interface die Funktionen "erzwinkt", welche im Vorgänger enthalten sind.
Also daß das nächte Interface immer automatisch das Erste "einbindet".
> Achtung, wenn das der erste Interface nicht "explizit" in der Klasse eingebunden wurde, dann kann man nicht auf das Erste casten.

Und kann kann ohne Cast im zweiten Interface auf Funktionen des Ersten zugreifen.

Es wird auch gern verwendet, wenn man neue Versionen eines Interfaces einführt, wo diese Interfaces zusammenhängen, welche auf einander aufbauen. (siehe OTA)
Ist ja nicht so, daß die Vererbung nur für den Compiler ist ... man kann den Code damit auch "dokumentieren", also die Abhängikeiten.



Das letzte UND nutze ich gern aus, um bei Property die Getter/Setter vor der Codevervollständigung zu verstecken.
In Interfaces ist ja leider alles public.

Delphi-Quellcode:
type
  IMyIntfIntern = interface
    function Getter: Integer; // Diese werden von delphis Codevervollständigung nicht angezeigt, wenn es die Funktionen/Property des IMyIntf auflistet,
    procedure Setter(i: Integer); // obwohl Sie das eigentlich machen sollte, aber ich hoffe die reparieren es nicht (nicht ohne private bei Interfaces zu erlauben).
  end;

  IMyIntf = interface(IMyIntfIntern)
    [GUID]
    property Value: Integer read Getter write Setter;
  end;
$2B or not $2B

Geändert von himitsu (27. Jan 2014 um 12:09 Uhr)
  Mit Zitat antworten Zitat