Я делаю полную перезапись старой библиотеки, и я не знаю, как справиться с этой ситуацией (ради того, чтобы быть поняты, все градом велосипед аналогии):Как реализовать множественное наследование в delphi?
У меня есть следующие классы:
TBike
- велосипед самTBikeWheel
- один из колеса велосипедаTBikeWheelFront
иTBikeWheelBack
, как наследуется отTBikeWheel
, а затем реализует конкретные вещи, они должны на нем
Это довольно просто, но теперь я решаю создать несколько видов велосипедов, каждый из которых имеет свои собственные колеса - они делают то же самое, что и обычные передние/задние колеса, а также специальные для этого велосипеда ,
TBikeXYZ
- наследует отTBike
TBikeWheelXYZ
- наследует отTBikeWheel
А вот моя проблема: TBikeWheelFrontXYZ
должен наследоваться от TBikeWheelXYZ
(чтобы получить конкретные методы в колеса XYZ), но должен также наследовать от TBikeWheelFront
(для получения конкретных методов переднего колеса).
Мой вопрос здесь, как я могу осуществить это таким образом, что это не так:
- чувствовать себя как взломать
- сила меня переписать тот же код несколько раз
+1, сдерживание часто моделирует реальность намного лучше, чем наследование. – mghie