La clase que hereda de otra clase se llama "subclase" o "clase derivada". La clase de la que se hereda se denomina "superclase" o "clase base".
Cuando una clase hereda de otra clase, automáticamente obtiene todas las propiedades y métodos de la superclase. Luego, la nueva clase puede agregar sus propias propiedades y métodos, o puede anular las propiedades y métodos de la superclase.
La herencia se utiliza para crear una jerarquía de clases, en la que cada clase hereda de un ancestro común. Esto hace posible reutilizar código y crear nuevas clases con diferentes funcionalidades.
Por ejemplo, considere una clase llamada "Animal". Esta clase puede tener propiedades como "nombre", "edad" y "especie". También podría tener métodos como `eat()`, `sleep()` y `move()`.
Ahora considere una clase llamada "Perro". La clase "Perro" puede heredar de la clase "Animal". Esto significa que la clase "Perro" obtendrá automáticamente todas las propiedades y métodos de la clase "Animal". La clase `Dog` puede luego agregar sus propias propiedades y métodos, como el método `bark()`.
Este es un ejemplo sencillo de cómo se utiliza la herencia para crear una nueva clase con una funcionalidad diferente. La herencia es una herramienta poderosa que se puede utilizar para crear programas orientados a objetos complejos y flexibles.
A continuación se muestran algunos ejemplos adicionales de cómo se utiliza la herencia en aplicaciones del mundo real:
* La clase `java.lang.Object` es la clase base para todos los objetos en el lenguaje de programación Java. Todas las demás clases en Java heredan de la clase "Objeto".
* La clase `java.util.ArrayList` es una subclase de la clase `java.util.AbstractList`. Esto significa que la clase `ArrayList` tiene todas las propiedades y métodos de la clase `AbstractList`, además tiene sus propias propiedades y métodos.
* La clase `javax.swing.JButton` es una subclase de la clase `javax.swing.JComponent`. Esto significa que la clase `JButton` tiene todas las propiedades y métodos de la clase `JComponent`, además tiene sus propias propiedades y métodos.