Hace poco encontré una situación en algún código en el que estoy trabajando que no tiene sentido para mí. Un conjunto de clases hereda de una clase base puramente para compartir algunos métodos en la clase base. No hay método que anule, solo métodos de llamadas de clases secundarias de la clase principal.Uso de herencia puramente para compartir funcionalidad común
Me parece que esto se modelaría mejor haciendo que las clases secundarias hagan referencia a la clase principal en lugar de heredar, lo que creo que reduciría la complejidad innecesaria. ¿Es esto razonable o me falta algún beneficio de usar una herencia como esta?
Estás en lo correcto. –