Herencia
Herencia:
- La herencia permite al usuario crear clases basadas en otras clases.
- Las clases heredadas pueden utilizar las funcionalidades de la clase base, así como algunas funcionalidades adicionales que el usuario puede definir.
- Elimina el código redundante, evita copiar y pegar y facilita la expansión.
- Esto es muy útil porque permite ampliar o modificar (anular) las clases sin cambiar la implementación del código de la clase base.
Ejemplo de Herencia:
¿Qué tienen en común un teléfono fijo antiguo y un smartphone?
- Ambos pueden ser clasificados como teléfonos.
¿Deberían clasificarse como objetos?
- No, ya que también definen las propiedades y comportamientos de un grupo de objetos. Un teléfono inteligente funciona como un teléfono normal, pero también es capaz de tomar fotografías, navegar por Internet y hacer muchas otras cosas. Entonces, teléfono fijo antiguo y el teléfono inteligente son clases secundarias que amplían la clase de teléfono principal.
Definiciones de Herencia:
- Superclase: La clase cuyas características se heredan se conoce como superclase (ó una clase base ó una clase principal ó clase padre).
- Subclase: La clase que hereda la otra clase se conoce como subclase (ó una clase derivada, clase extendida ó clase hija).