Muchas veces nos encontramos con que, para resolver un problema, disponemos de clases que nos ofrecen una funcionalidad muy cercana a la que necesitamos, pero carecen de cierta otra funcionalidad que nos interesa.
Una posible solución es escribir una nueva clase desde cero con toda la funcionalidad de la primera, más la nueva funcionalidad que necesitamos.
Otra posibilidad es añadir a la clase existente sólo la nueva funcionalidad, tomando provecho de todo el trabajo ya existente.
Esta sencilla, pero potente idea, es la base de la Herencia, una de las piedras angulares de la POO.