Das mit dem TMann/TFrau ist ja wohl geklärt durch TMensch. Du hast doch nach Polymorphie/Vererbung gefragt. Und was hat das Auto mit der Fabrik gemeinsam ? Nichts ! Du willst wohl lediglich darauf hinaus, daß die Fabrik mehrere hat. Bei dem Thema geht es aber darum, welche Dinge sich
wiederverwenden lassen, wegen gemeinsamer Eigenschaften. Das ist
OOP ! Was nützt also jetzt der Fabrik eine Eigenschaft "Viertürer", die sie von TAuto erbt ?
Für das Auto ist das eventuell aber schon wichtig. Die Fabrik hat also mit dem Auto genauso wenig zu tun, wie dieses mit dem Fahrer. Siehe die Schuhgröße. Die ist ja jetzt tatsächlich in Deinem Diagramm drin. Und die habe ich nur deshalb gewählt, weil sie bei dem Auto völlig überflüssig wäre.
Du mußt das Prinzip der Vererbung usw. nochmals komplett überdenken. Und zwar in der Richtung, was jetzt wo gebraucht wird. Dein Beispiel ist auch nicht so gut geeignet, das alles zu erklären. Weil man kaum eine Hierarchie darstellen kann.
So könnte die aussehen :
Delphi-Quellcode:
TKonzern -> TFabrik (erbt vom Konzern alles, hat aber zusätzlich eigenen Standort)
TFahrzeug -> TAuto (4 Räder) -> TPkw -> TKombi (zusätzlich Kofferraumvol.)
-> TLkw (x Achsen)
TMensch (egal, ob Führerschein usw.) -> TFahrer
Bei den 3 Basisklassen sehe ich kaum verwertbare Sachen für
OOP. Du schleppst eher mehr Ballast mit rum.
Edit : zu früh abgeschickt.