Tengo una pregunta teórica sobre cómo tratar el siguiente escenario en un lenguaje que no permite herencia múltiple.Herencia múltiple sin herencia múltiple y sin duplicación de código
imaginar que tienen una clase base Foo y desde que estoy deseando crear tres subclases:
- Clase Bar hereda Foo e implementa la funcionalidad "A"
- Clase Baz hereda Foo e implementa la funcionalidad "B"
- Clase Qux hereda Foo e implementa funcionalidades "A" y "B"
imaginar que el código para implementar funcionalidades "A" y "B" es siempre la misma. ¿Hay alguna manera de escribir el código para "A" y "B" solo una vez y luego aplicar las clases apropiadas (o "heredarlo")?
¿Algún idioma en particular? ¿Java? DO#? ¿Algo más? – Tudor
¿Por qué no estás implementando la misma funcionalidad dentro de tu clase FOO, y solo marcas A/B como virtual/sobresatible? – YavgenyP
@Tudor Estaba pensando en C#, pero cualquier lenguaje OOP que no permite herencia múltiple está bien. –