Das ist doch alles vom Ansatz schon total falsch
Hier wird gerade alles durcheinander geworfen.
Wie kann man
TJob
von
TMensch
ableiten?
Selbst
TSchueler
kann man nicht von
TMensch
ableiten.
Denn
TSchueler
ist eine
Rolle die ein
TMensch
einnimmt. Somit wäre das also eine
Eigenschaft, die man hat oder nicht oder nicht mehr hat.
Somit ist also
TMensch
ein Aggregat und kann eben Bezug zu diesen Rollen haben mit entsprechenden Eigenschaften.
Daraus würde sich dann folgender Ansatz ergeben
Delphi-Quellcode:
TRolle = class
end;
TMensch = class
property Rollen[Index:Integer] : TRolle read GetRolle;
end;
TSchule = class
end;
TSchulKlasse = class
property Schule : TSchule;
end;
TSchueler = class( TRolle )
property Klasse : TSchulKlasse;
end;
Jetzt kann man z.B. alle Menschen herausfiltern, die Schüler der Schule xy sind.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)