Einzelnen Beitrag anzeigen

Benutzerbild von Sanchez
Sanchez

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

Re: Beispiel für Polymorphie gesucht

  Alt 28. Jan 2004, 09:27
Ich würde deine beiden Klassen durch eine abstrakte Oberklasse erweitern:

Delphi-Quellcode:
unit Family;

interface

type
  TFamilyMember = class(TObject)
  public
    function GetType: String; virtual; abstract; // muss Überschrieben werden
  end;

type
  TParent = class(TFamilyMember)
  public
    function GetType: String; override; // FamilyMember-Methode überschrieben
  end;

type
  TSon = class(TFamilyMember)
  public
    function GetType: String; override; // FamilyMember-Methode überschrieben
  end;

implementation

////////////////////////////////////////////////////////////////////////////////
//
// TParent.GetType
//
// Verwandtschaftsbeziehung.

function TParent.GetType: String;
begin
  result := 'Eltern';
end;

////////////////////////////////////////////////////////////////////////////////
//
// TSon.GetType
//
// Verwandtschaftsbeziehung.

function TSon.GetType: String;
begin
  result := 'Sohn';
end;

end.
Denn dein Beispiel würde ja bedeuten, dass der Sohn eine Art von Elternteil ist.

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