Herencia

Solo disponible en BuenasTareas
  • Páginas : 22 (5293 palabras )
  • Descarga(s) : 0
  • Publicado : 5 de junio de 2011
Leer documento completo
Vista previa del texto
Instituto Tecnológico de Cd. Victoria

Programación Orientada a Objetos

Educación a Distancia

1

Instituto Tecnológico de Cd. Victoria

Programación Orientada a Objetos

Contenido
3.1 3.2 3.3 3.4 3.5 3.6 Herencia, Clase Base y Clase Derivada Herencia Simple, Herencia Múltiple Reutilización de Miembros Heredados Referencia al Objeto de la Clase Base Constructores y Destructores enClases Derivadas Redefinición de Métodos en Clases Derivadas Pag. 3 5 7 9 11 17

Educación a Distancia

2

Instituto Tecnológico de Cd. Victoria

Programación Orientada a Objetos

UNIDAD III: HERENCIA

3.1. Herencia, Clase Base y Clase Derivada La herencia es una de las características principales de la POO. Es una forma de reutilización de software en la que se crean clases a partirde clases existentes. Al crear una clase, en vez de declarar atributos y métodos completamente nuevos, el programador puede establecer que la nueva clase herede los atributos y métodos de una clase existente. Esta clase existente se conoce como superclase o clase base, y la nueva clase se conoce como subclase o clase derivada. Una vez creada, cada subclase puede convertirse en superclase defuturas subclases. Una subclase, además de heredar atributos y métodos de su superclase, generalmente agrega sus propios atributos y métodos. Por lo tanto, una subclase es más específica que su superclase y representa a un grupo mas especializado de objetos. Podemos decir de manera general que la subclase exhibe los comportamientos de su superclase junto con comportamientos adicionales específicos deella. Se conoce como superclase directa a aquella superclase a partir de la cual la subclase hereda en forma explícita. Una superclase indirecta se hereda de dos o mas niveles arriba en la jerarquía de clases, la cual define las relaciones de herencia entre las clases. En Java, la jerarquía de clases empieza con la clase Object (en el paquete java.lang), a partir de la cual heredan todas las clasesen Java, ya sea en forma directa o indirecta.

Ejemplo: Si tenemos la siguiente jerarquía de clases:

Y para ellas definimos los siguientes atributos:
Educación a Distancia

3

Instituto Tecnológico de Cd. Victoria      

Programación Orientada a Objetos

Los objetos físicos tienen un peso y dimensiones. Los objetos animados o vivos tienen una fecha de nacimiento. Los animalestienen un hábitat y padres. Los mamíferos pertenecen a una raza. Los perros tienen a su amo. Y los gatos cuentan con un número de canarios que han cazado.

Cada una de las clases de esta jerarquía heredan los atributos de las clases que están por encima de ellas. Así los atributos con que cuenta cada clase de esta jerarquía son:

Educación a Distancia

4

Instituto Tecnológico de Cd.Victoria

Programación Orientada a Objetos

3.2. Herencia Simple, Herencia Múltiple Herencia Simple La Herencia Simple se establece cuando una clase puede heredar (o extender) los atributos y métodos de solamente una clase previamente definida. De esta forma un objeto instanciado de la subclase tendrá los atributos y métodos definidos en la superclase así como los definidos en la subclase. En elsiguiente diagrama se puede apreciar que una clase solo puede tener un padre:

En el diagrama anterior las flechas representan la relación "es un" o "es una" , por lo que deben dirigirse desde la clase sucesora hacia la antecesora.

En Java la derivación de una clase se indica en el encabezado de la clase: class nombreSubClase extends nombreSuperClase { en donde nombreSubClase es el nombre dela clase que se está definiendo y nombreSuperClase es el nombre de la clase de quien heredará métodos y atributos.

Educación a Distancia

5

Instituto Tecnológico de Cd. Victoria

Programación Orientada a Objetos

Herencia Múltiple La Herencia Múltiple se establece cuando una clase puede heredar (o extender) los atributos y métodos de mas de una clase previamente definida. De esta...
tracking img