¿Para qué se usa? Para
extender la funcionalidad de
la clase padre Para
especializar el
comportamiento de la clase
padre
La herencia es un mecanismo que permite la definición
de una clase a partir de la definición de otra ya
existente. La herencia permite compartir
automáticamente métodos y datos entre clases,
subclases y objetos.
Desventajas 1.Se ahorra código
2.Se introduce una fuerte
dependencia en la clase hija
respecto a la clase padre
3.Puede dificultar la
reutilización 4.Un cambio en la
clase padre puede tener
efectos imprevistos en las
clases hijas 5.Un objeto de una
clase hija puede tener un
comportamiento inconsistente
con lo esperado de un objeto
de la clase padre 6.Se establece
una jerarquía o clasificación. Si
cambia el criterio de
clasificación puede acarrear
muchas modificaciones
Ventajas 1.Se ahorra código
2.Permite reutilizar código
extendiendo su funcionalidad