Herança
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. ¿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.
- 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).