Escolar Documentos
Profissional Documentos
Cultura Documentos
3 Reutilizacin de miembros heredados. 3.4 Referencia al objeto de la clase base. 3.5 Constructores y destructores en clases derivadas. 3.6 Redefinicin de mtodos en clases derivadas.
U NIDAD III
C OMPETENCIA ESPECFICA A
DESARROLLAR
Implementar la herencia en clases derivadas para reutilizar los miembros de una clase base.
Q UE
ES HERENCIA ?
Q UE
ES HERENCIA EN POO ?
La herencia es un mecanismo por el que se pueden crear nuevas clases a partir de otras existentes:
HERENCIA
HERENCIA
Proceso de transmisin de los atributos y mtodos de una clase padre a clases hijas. La clase hija adems de heredar las caractersticas de padre, puede aadir atributos y mtodos propios, as como redefinir los mtodos de la clase padre
T IPOS
DE HERENCIA
Herencia simple: un tipo derivado se crea a partir de una nica clase base.
T IPOS
DE HERENCIA
Herencia mltiple: una clase tienen ms de una ascendiente inmediato. Para simular Herencia Mltiple se usan las interfaces
H ERENCIA
Para pasar parmetros constructor de la clase padre: super (para1, para2, ..., paraN)
al
Para indicar que una clase hereda sus atributos y mtodos de otra, en Java se utiliza la palabra clave extends. Herencia simple:
class clasederivada extends clasebase
perro gato atributos y mtodos estn REPETIDOS Nombre Nombre edad edad Numpatas Numpatas Imprimedatos Imprimedatos
HERENCIA
mamiferos
perro
gato
toString();
toString();
C LASE
package animalitos;
MAMFEROS
public class mamiferos { private String nombre; private int edad; private int patas; public mamiferos(String nom,int ed, int pat) { nombre = nom; edad=ed; patas = pat; } public String toString() { return(nombre + " tiene " +edad+ " aos "+patas + " y patas "); } }
C LASE
package animalitos;
public class gato extends mamiferos { public gato( String nombre){ super(nombre, 8,4); } }
GATO
C LASE
package animalitos;
PERRO
public class perro extends mamiferos { public perro(String nombre){ super(nombre, 5,3); }
C LASE
package animalitos;
ANIMALITOS
import javax.swing.JOptionPane; public class Animalitos { public static void main(String [] args) { perro greas = new perro("Bobi"); JOptionPane.showMessageDialog(null,"Perrito:"+greas); gato minino=new gato("fido"); JOptionPane.showMessageDialog(null,"Gatito:"+minino);
} }
Todo objeto tiene: Identidad (puede distinguirse de otros objetos) Estado (datos asociados a l) Comportamiento (puede hacer cosas)
Instrumentos musicales:
La flauta de Pan formada generalmente por dos hileras de tubos de caa de diferentes longitudes: el arca, normalmente de siete tubos, y el ira, normalmente de 6, aunque segn el tipo de flauta estas cantidades pueden variar notoriamente.
Flauta de pan
formada generalmente por dos hileras de tubos de caa de diferentes longitudes: el arca, normalmente de siete tubos, y el ira, normalmente de 6, aunque segn el tipo de flauta estas cantidades pueden variar notoriamente.
nombre; nombreOrig; numHileras; material; totalTubos;
numTubos(); toString();
E JEMPLOS
La guitarra es un instrumento musical de cuerda pulsada, compuesto de una caja de madera, un mstil sobre el que va adosado el diapasn o trastero, generalmente con un agujero acstico en el centro de la tapa y seis cuerdas. Sobre el diapasn van incrustados los trastes, que permiten los diferentes tonos. Su nombre especfico es guitarra clsica o guitarra espaola
E JEMPLOS
La guitarra es un instrumento musical de cuerda pulsada, compuesto de una caja de madera, un mstil sobre el que va adosado el diapasn o trastero, generalmente con un agujero acstico en el centro de la tapa y seis cuerdas. Sobre el diapasn van incrustados los trastes, que permiten los diferentes tonos. Su nombre especfico es guitarra clsica o guitarra espaola
Guitarra
nombre; nombreOrig; numCajas; material; numMastil; numAgujeroAcus; totalCuerdas;
totalCuerdas(); toString();
E JEMPLOS
Concentremos nuestra atencion en las clases sus atributos y metodos
Flauta de pan
nombre; nombreOrig; numHileras; material; Algunos totalTubos; numTubos(); toString();
Guitarra
nombre; nombreOrig; numCajas; material; metodos estan REPETIDOS numMastil; numAgujeroAcus; totalCuerdas;
atributos y
totalCuerdas(); toString();
INSTRUMENTO
CUAL ES EL RESULTADO?
Instrumento
Instrumento, es la clase Padre o Superclase Flauta de pan y Guitarra, son las clases Hijas o Subclases
flauta
Guitarra
I NSERTE EL SIGUIENTE
INSTRUMENTO EN LA CLASE PADRE
La flauta de pico consiste en un tubo cilndrico con siete orificios en su parte frontal y uno en la parte posterior. En la parte superior del tubo est la boquilla, donde se produce el sonido. Suele ser una pieza separable, y la mayor o menor separacin permite la afinacin de la flauta. Muchas veces, el orificio que corresponde al dedo meique de la mano derecha forma parte de otra pieza separable del instrumento. La flautas de pico estn fabricadas en madera o en algunos materiales plsticos, siendo de madera las de mayor calidad. Las hay de diferentes tamaos, correspondiendo a las diferentes voces, y estn afinadas, segun el caso, en Do o en Fa (Por ejemplo: sopranino - afinada en Fa, Soprano - en Do, Alto - en Fa, Tenor - en Do, etc.).
I NSERTE EL SIGUIENTE
INSTRUMENTO EN LA CLASE PADRE
El Violn pertenece a los instrumentos de cuerda y, dentro de este gnero, pertenece a los de cuerda frotada ya que sus cuatro 4 cuerdas generan un sonido muy particular a intervalos de quintas (sol2, re3, la3 y mi4), al recibir la friccin de la cinta de un arco elaborada con pelos de caballo En los violines antiguos las cuerdas se hacan de tripa, actualmente se componen de materiales sintticos aunque tambin de aluminio, plata, acero e incluso de oro su cuerpo es de madera y la calidad y variedad de esta es fundamental para conseguir ms calidad en su sonido usndose, entre otras, el arce para el fondo, el abeto para la tapa y algunas otras variedades de componentes mas duros para el resto de las secciones.
D IBUJE
EN DIAGRAMA UML
Herencia