Una superclase en Java es una clase que sirve como base para otras clases. Es parte fundamental del concepto de herencia, uno de los pilares de la programación orientada a objetos.
- Define atributos y métodos comunes que pueden ser compartidos por múltiples clases.
- Las clases que heredan de ella se llaman subclases.
- Las subclases pueden usar, modificar o extender el comportamiento definido en la superclase.
Ejemplo básico
// Superclase
public class Animal {
String nombre;
public void hacerSonido() {
System.out.println("El animal hace un sonido");
}
}
// Subclase
public class Perro extends Animal {
public void hacerSonido() {
System.out.println("El perro ladra");
}
}
¿Por qué usar superclases?
- Reutilización de código: Evitas duplicar atributos y métodos comunes.
- Organización lógica: Agrupas comportamientos similares.
- Polimorfismo: Puedes tratar objetos de distintas subclases como si fueran de la superclase.
Palabra clave importante
extends: Se usa para indicar que una clase hereda de otra.
public class Gato extends Animal {
// Gato también hereda de Animal
}