Estudiante

Páginas: 20 (4771 palabras) Publicado: 29 de enero de 2013
Herencia
 Es la derivación de una clase a partir de otra
existente.
 El objetivo es la reutilización del software
desarrollado.

POO en Java IV: Herencia
(Parte 1)
Franco Guidi Polanco
Escuela de Ingeniería Industrial
Pontificia Universidad Católica de Valparaíso, Chile

Herencia

fguidi@ucv.cl

Actualización: 22 de Agosto de 2011
Franco Guidi Polanco

Súperclases y subclasesSúperclases y subclases
  La subclases heredan propiedades de su súperclase.
  Una subclase, respecto de su súperclase:

 La clase de la cual se deriva otra clase se denomina
clase base, súperclase o clase padre.
 Una clase derivada de una súperclase recibe también
el nombre de subclase o clase hija.
Vehículo

  Agrega nuevas propiedades
  Modifica propiedades heredadas.Súperclase
Clase base
Clase padre

Camión

Subclase
Clase derivada
Clase hija

Vehículo

Camión

  La herencia aplica en relaciones de naturaleza B es un
tipo de A
Franco Guidi Polanco

2

3

Franco Guidi Polanco

Patente
Marca
----Avanza

Patente
Marca
Carga máxima
----Avanza
Activa tolva
4

Herencia simple

Herencia múltiple

 Una clase es subclase de unaúnica súperclase.

 Una clase es subclase de más de una súperclase.

Vehículos
terrestres

Vehículos
acuáticos

Vehículo
Vehículos
anfibios

Camión

 Java no soporta la herencia múltiple.

Franco Guidi Polanco

5

Jerarquías de Herencia

+ Universidad
+ set y get Universidad

Alumno
pregrado

+ Carrera
+ set y get Carrera

Franco Guidi Polanco

Alumno

6Ejemplo (1/2)

 La herencia organiza clases bases y derivadas en
jerarquías de clases.
Persona

Franco Guidi Polanco

  Determinar si en las siguientes situaciones existe una
relación de herencia entre las clases (indicadas en negrita):
Caso 1

 Rut, nombre
 set y get nombre

Profesor

Alumno + Tesis
magíster + set y get Tesis

+ Especialidad
+ set y get EspecialidadProfesor + Horas
+ set y get Horas
hora

Caso 2

Caso 3

Todo
Electrodoméstico se
enciende y apaga. El
Horno microondas
además abre y cierra su
puerta.

Los Bienes raíces
tienen un Rol de
identificación. Una
Casa tiene también un
Jefe de hogar y un
Negocio tiene una
Patente comercial

Un Camión tiene
Patente. Un Conductor
tiene un camión
conducido.

Electrodoméstico

HornoMicroondas
7

Franco Guidi Polanco

Bien Raíz

Casa

Negocio

X

8

Ejemplo (2/2)

Implementación de jerarquías de herencia

  Determinar si en las siguientes situaciones existe una
relación de herencia entre las clases (indicadas en negrita):
Caso 4

Caso 5

Los Archivos
Multimediales pueden
ser Imágenes o
Música. Las imágenes
pueden ser a Color o
Blanco y Negro.Un Avión tiene
Fuselaje, Alas y
Motores.

Multimedia
Música

Imagen

Color
Franco Guidi Polanco

B/N

 Para crear una subclase a partir de una superclase, en
Java la subclase debe declararse:

Caso 6
Una Gaviota vuela.
Una Abeja vuela y
además tiene aguijón.

public class NombreSubclase extends NombreSuperclase

 Ejemplo:

XX

Persona
Alumno
9

Franco GuidiPolanco

Implementación de jerarquías de herencia:
ejemplo

Persona

Alumno

public class Persona {

public class Alumno extends Persona {

public String rut;
public String nombre;

Operaciones:
-set y get RUT
- set y get Nombre

public Persona() {
rut = "00000000-0";
nombre = ""; }
public void setRut(String r){
rut = r; }
public String getRut(){
return rut; }
public voidsetNombre(String n){
nombre = n; }
public String getNombre(){
return nombre; }

Operaciones:
Atributos:
-set y get RUT
- RUT
- set y get Nombre
- Nombre
- set y get Rol UCV
- Rol UCV
}

 NOTA: Supondremos, por el momento, todos los
miembros públicos.
Franco Guidi Polanco

10

Implementación de jerarquías de herencia

 Implementar las clases Persona y Alumno, de
acuerdo...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Estudiante
  • Estudiante
  • Estudiante
  • Estudiante
  • El estudiante
  • Estudiante
  • Estudiante
  • Estudiante

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS