51000K512

Páginas: 6 (1417 palabras) Publicado: 6 de abril de 2011
Índice

Tema 7 - Herencia
Luis Gonzaga Pérez Cordón

Definición Ventajas Situaciones en las que se aplica la herencia Tipos de Herencia Herencia en Java

Definición
La herencia es un mecanismo de la P.D.O. que permite construir una clase incorporando de manera implícita todas las características de una clase previamente existente.

Ejemplo
A A es un ascendiente o superclase de B. Si laherencia entre A y B es directa decimos que A es la clase padre de B

B es un descendiente o subclase de A. Si la herencia entre A y B es directa decimos además que B es una clase hija de A B

1

Ventajas
Modelado de la realidad: las relaciones de especialización/generalización entre las entidades del mundo real. Evita redundancias Facilita la reutilización Sirve de soporte para elpolimorfismo

Situaciones en las que se aplica la herencia
Situaciones:
Especialización Extensión Especificación Construcción ?????

Situaciones en las que se aplica la herencia
Especialización: Dado un concepto B y otro concepto A que representa una especialización de B, entonces puede establecerse una relación de herencia entre las clases de objetos que representan a A y B.
Vehículo A es un B:un Coche es un Vehículo Coche

Situaciones en las que se aplica la herencia
Extensión: una clase puede servir para extender la funcionalidad de una superclase sin que represente necesariamente un concepto más específico.
Vendedor

VendedorConVehículo

2

Situaciones en las que se aplica la herencia
Especificación: Una superclase puede servir para especificar la funcionalidad mínimacomún de un conjunto de descendientes.
ObjetoGrafico: seleccionar mover escalar cambiarColor

Situaciones en las que se aplica la herencia
Construcción: Una clase puede construirse a partir de otra, simplemente porque la hija puede aprovechar internamente parte o toda la funcionalidad del padre, aunque representen entidades sin conexión alguna.
Lista

Texto

Línea

Cuadrado

PilaSituaciones en las que se aplica la herencia
Construcción: ¡¡MAL USO DE LA HERENCIA!!. No se debe emplear en estos casos. Si necesita la funcionalidad de una lista debe USAR una lista, no HEREDAR de una lista.

Situaciones en las que se aplica la herencia
Ejemplo:
Cuenta -----------------long numero; String titular; double saldo; double interes; ---------------ingreso() ingresoInteresMes();leerSaldo(); transferirA();

CuentaCorriente ----------------Reintegro();

CuentaAhorroPFijo -------------------Date vencimiento; -------------------ingresoMes();

PlanPensiones ---------------Date vencimiento; float cotización; String numCuentaOrigen;

3

Tipos de Herencia
Principalmente existen dos tipos de herencia.
Herencia simple: una clase solo puede tener un padre, por lo tanto laestructura de clases será en forma de arbol. Herencia múltiple: Una clase puede tener uno o varios padres. La estructura de clases es un grafo

Tipos de Herencia
Herencia simple:
Muy fácil de entender y manejar tanto por el lenguaje como por el programador. Limitada puesto que en el mundo real un objeto puede pertenecer a varias clases y sin embargo aquí esta situación no se puede modelarTipos de Herencia
Herencia múltiple:
Es mas realista y da al programador más libertad y mas posibilidades de reutilización de código. Es mucho más difícil de utilizar por la posibilidad de ciclos y para los lenguajes de programación es muy costoso el permitirlo.

Tipos de Herencia
Ejemplo de herencia múltiple
MedioComunicacion ObjetoFísico

ElAire

Teléfono

4

Tipos de HerenciaEjemplo herencia múltiple:
Constructor ---------------------------Colegio colegio;

Herencia en Java
Características Como se utiliza Redefinición de métodos, constructores,… Como funciona la gestión de tipos en java Métodos y clases abstractas Interfaces Ejemplos de herencia

Arquitecto -------------------construir()

Aparejador -------------------construir()

ArquitectoYAparejador...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS