Está en la página 1de 15

Herencia en Java

Super Clase
Clase Derivada

Programacin Orientada a Objetos Ing. Jos E. Navarrete Ponce

Ing. Jos Navarrete | 2013

Herencia en Java
Herencia es la posibilidad de construir (programar) una clase a partir de otra ya construida, aprovechando las caractersticas (variables y mtodos) de la super clase (o clase padre) para generar otra clase. (clase hija o clase derivada) De una clase X se pueden generar cualquier cantidad de otras clases que comparten las caractersticas de la super clase o clase padre Cuando programamos una clase en la forma:
pubic class Algo extends JFrame Estamos heredando (extendiendo) la clase JFrame en nuestra clase Algo

Ing. Jos Navarrete | 2013

Herencia
La Herencia te permite definir una clase muy general para despus definir clases ms especializadas agregando ms detalles. La clase ms general se llama base o clase padre Las clases especializadas heredan todas las propiedades de la clase general, o clase padre. Las clases especializadas se derivan de la clase base se les llama clases hijas. Despus de desarrollar la clase general solo tienes que escribir la diferencia o especializacin de cdigo para cada clase hija. Una jerarqua de clases puede ser derivada de otras clases hijas (es decir, las clases hijas pueden a su vez ser padres de otras clases) Cualquier clase mayor en la jerarqua se le llama clase ancestro Cualquier clase menor en la jerarqua se le llama clase descendiente

Ing. Jos Navarrete | 2013

Herencia
Clase: MAMFEROS Clase: Felinos Clase: Caninos Clase: Bovinos
Todos los felinos (Garfield) , caninos (Snoopy) y bovinos (Clarabella) son mamferos. Sin embargo no podemos decir que todos los mamferos sean felinos.
Ing. Jos Navarrete | 2013

Herencia
Clase: MAMFEROS Clase: Felinos Clase: Caninos Clase: Bovinos
ClaraBella

Gatos

Leones

Tigres

Perros

Lobos

Clases

Garfield

Simba

Too

Snoopy

Feroz

Objetos

Ing. Jos Navarrete | 2013

Ing. Jos Navarrete | 2013

Ing. Jos Navarrete | 2013

Ing. Jos Navarrete | 2013

Ing. Jos Navarrete | 2013

Ing. Jos Navarrete | 2013

De acuerdo al ejemplo anterior, como un Estudiante tambin es Persona, heredar de esta los atributos de nombre, edad y sexo. Es decir dentro de la clase Estudiante puedes utilizar estas variables sin necesidad de definirlas otra vez. As mismo, un Estudiante puede utilizar el mtodo diceNombre que est definido dentro de la clase Persona.
Ing. Jos Navarrete | 2013

Cmo funciona la herencia?

Cmo funciona la herencia?

Ing. Jos Navarrete | 2013

Si tenemos un objeto de la clase c. al llamar un mtodo, este se buscar de acuerdo a la jerarqua de clases iniciando en la subclase mas inferior

Cmo funciona la herencia?


.

Ing. Jos Navarrete | 2013

Cmo funciona la herencia?

Ing. Jos Navarrete | 2013

Los constructores en la herencia El constructor de la clase secundaria debe


invocar (llamar) al constructor de la clase padre mediante la instruccin super() y enviar los parmetros que tenga el constructor de esa clase super tambin nos sirve para llamar mtodos de la clase padre que estn sobrescritos en la clase secundaria
Ing. Jos Navarrete | 2013

También podría gustarte