Also ich mache nochmal ein (nur zur Verdeutlichung) Beispiel aus dem Fahrzeugbereich:
TFooBase stellt die Basis dar mit Eigenschaften wie z.B. 4 Räder.
TFooClassBenzin => class(TFooBase) mit zusätzlichem Objekt Benzinmotor
TFooClassElektro => class(TFooBase) mit zusätzlichem Objekt Elektromotor
TFooClassKFZBenzin => class(TFooClassBenzin ) Basisklasse für z.B. KFZ mit Benzinmotor
TFooClassKFZElektro => class(TFooClassElektro) Basisklasse für z.B. KFZ mit Elektromotor
TFooClassLKW => class(TFooClassBenzin ) Basisklasse für z.B. LKW mit Benzinmotor
TFooClassKFZBenzin + TFooClassKFZElektro sollen jetzt noch die zusätzlichen gemeinsam nutzbaren Funktionen
Funktion1/Funktion2 für z.B. ausschliesslich den KFZ-Bereich. Eine Zwischenklasse KFZ zwischen TFooBase und TFooClassBenzin/TFooClassElektro geht hier nicht, weil die KFZ-Funktionen direkt schon den Benzin bzw. Elektromotor ansprechen müssen.
Natürlich würde ich einen Fahrzeugbereich etwas anders abbilden, aber so wäre mein momentanes Problem strukturiert. Hoffe, es ist nun etwas klarer.