Скажем, я использую библиотеку форм, которые предложили:Продлить конкретный базовый класс иерархии
class Shape
class Circle extends Shape
class Square extends Shape
, но я хочу ввести понятие красных фигур. Я не могу изменить библиотеку, но я могу создать:
class RedShape extends Shape
однако это не может быть легко расширена до RedCircle
, поскольку он не может распространяться как RedShape
и Circle
.
Я не думаю, что узор декоратора здесь работает, но есть ли способ достижения этого?
Я думаю, что узор декоратора на самом деле является вашим лучшим выбором в этом случае, так как вы не можете иметь множественное наследование –