Sei sulla pagina 1di 10

Sistemas II

Herencia

Rubn Francisco Manrique


COD:180056

Herencia
Es una forma de reutilizacin de software en la que se
crea una nueva clase absorbiendo los miembros de una
clase existente, y se mejoran con nuevas capacidades,
o con modificaciones en las capacidades ya existentes.
Con la herencia, los programadores ahorran tiempo
durante el desarrollo, al reutilizar software probado y
depurado de alta calidad.

Sistemas II: Rubn Francisco Manrique

Herencia
Al crear una clase, en vez de declarar miembros
completamente nuevos, el programador puede designar
que la nueva clase herede los miembros de una clase
existente. Esta clase existente se conoce como
superclase, y la nueva clase se conoce como
subclase.
Una subclase generalmente agrega sus propios campos
y mtodos. Por lo tanto, una subclase es ms especfica
que su superclase y representa a un grupo ms
especializado de objetos.

Sistemas II: Rubn Francisco Manrique

Superclases y subclases
Relacin es un:
En la geometra un rectngulo es un cuadriltero.
En Java puede decirse que la clase Rectangulo hereda
de la clase Cuadrilatero.
En este contexto, la clase Cuadriltero es una
superclase, y la clase Rectngulo es una subclase.

Sistemas II: Rubn Francisco Manrique

Superclases y subclases

Sistemas II: Rubn Francisco Manrique

Jerarqua de Herencia

Sistemas II: Rubn Francisco Manrique

Problema con la herencia


A pesar de que un mtodo de superclase sea apropiado
para una subclase, a menudo esa subclase requiere una
versin personalizada del mtodo.
En dichos casos, la subclase puede sobrescribir
(redefinir) el mtodo de la superclase con una
implementacin apropiada.

Sistemas II: Rubn Francisco Manrique

Miembros protected
Los miembros public de una clase son accesibles en
cualquier parte en donde el programa tenga una
referencia a un objeto de esa clase.
Los miembros private de una clase son accesibles slo
dentro de la misma clase. Los miembros private de una
superclase no son heredados por sus subclases.
El uso del acceso protected ofrece un nivel intermedio
de acceso entre public y private.
Los miembros protected de una superclase pueden ser
utilizados por los miembros de esa superclase, por los
miembros de sus subclases.
Sistemas II: Rubn Francisco Manrique

Ejemplo
En una compaa, a los empleados por comisin (que se
representarn como objetos de una superclase) se les
paga un porcentaje de sus ventas, mientras que los
empleados por comisin con salario base (que se
representarn como objetos de una subclase) reciben
un salario base, ms un porcentaje de sus ventas.

Sistemas II: Rubn Francisco Manrique

Taller
Implemente
las
clases
especificadas en el diagrama
de clases usando herencia.
Escriba un programa de
prueba (TEST).
Nota: Tenga en cuenta que
existen dos constructores.

Sistemas II: Rubn Francisco Manrique

10

Potrebbero piacerti anche