En esta lección analizamos la sobrescritura de métodos en Java: cómo y por qué una subclase sustituye el comportamiento del padre, la utilidad de la anotación
@Override, cómo funciona el polimorfismo cuando invocamos a través de una referencia de tipo base, así como las reglas clave (firma, modificadores de acceso, excepciones, covarianza) y las limitaciones (
static,
final,
private). Cerramos con práctica en un mini‑proyecto «Zoológico» y un repaso de errores típicos.