Einzelnen Beitrag anzeigen

Benutzerbild von Sanchez
Sanchez

Registriert seit: 24. Apr 2003
Ort: Neumarkt Stmk
892 Beiträge
 
Delphi XE6 Enterprise
 
#6

Re: [OOP] Assoziation Aggregation

  Alt 25. Jan 2004, 17:35
Ich war mir auch nie sicher ob ich das richtig verstanden habe, deshalb frag ich auch gleich mal nach.

Eine Komposition:

Delphi-Quellcode:
type
  TEineKlasse = class
    private
      FEinObjekt : TAndereKlasse;
    public
     ...
end;
FEinObjekt wird im Create erzeugt und im Destroy freigegeben und bleibt die ganze Zeit die selbe Instanz von TAndereKlasse.

Eine Aggregation:

Delphi-Quellcode:
type
  TEineKlasse = class
    private
      FEinObjekt : TAndereKlasse;
    public
      procedure SetzeEinObjekt(AEinObjekt : TAndereKlasse);
end;
FEinObjekt wird von außen versorgt. Das heisst außerhalb der Klasse erzeugt, zerstört und kann auch ersetzt werden.

Eine Assoziation:

Delphi-Quellcode:
type
  TEineKlasse = class
    public
     procedure MachWas(AEinObjekt : TAndereKlasse);
end;

....

procedure TEineKlasse.MachWas(AEinObjekt : TAndereKlasse);
begin
  AEinObjekt.Machwas;
end;
AEinObjekt wird bei Aufruf der Methode in der es benutzt wird übergeben.


Stimmt das? Ich war mir nie richtig sicher.

grüße, daniel
Daniel
Testen ist feige!
  Mit Zitat antworten Zitat