The Decorator Design Pattern

Acabo de comenzar a aprender patrones de diseño y tengo dos preguntas relacionadas con el Decorador ...

e preguntaba por qué el patrón del decorador sugiere que el decorador implemente todos los métodos públicos del componente que decora.

¿No se puede usar la clase de decorador para proporcionar comportamientos adicionales, y luego el componente concreto (que se le pasa) solo se puede usar para llamar a todo lo demás?

Y en segundo lugar, ¿qué sucede si el componente concreto que desea decorar no tiene una clase base de la que también pueda derivar el decorador abstracto?

¡Gracias por adelantado

Respuestas a la pregunta(2)

Su respuesta a la pregunta