Herencia

La herencia (hierarchy) es una de las grandes cualidades de la programación orientada a objetos. Cuando una clase hereda de otra, adquiere sus atributos y métodos visibles, permitiendo reutilizar el código y funcionalidades, que en las clases heredadas se pueden ampliar.
La clase de la que se hereda se llama superclase y la clase que hereda subclase.
Una subclase dispone de atributos y métodos heredados de la superclase. Generalmente se añaden más atributos y métodos. Esto aumenta la funcionalidad y evita la repetición de código. En la API de Java la mayoría de clases no se definen desde cero. Construir clases heredando de otras simplifica el desarrollo.
A continuación se muestra en un diagrama UML cómo se indica la herencia. Para indicar que una clase es hija de otra clase se utiliza una flecha.