Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Practica
!"#$"%$&'( $" *%+,$-(+ ./-01,(2%/"(3$+
DATOS DE IDENTIFICACIN DE LA PRCTICA
MATERIA
Programacin Orientada a Objetos
NOMBRE DE LA PRCTICA
Herencia
NMERO DE PRCTICA DURACIN FECHA DE IMPLEMENTACIN
6 2 Horas 21/04/2014 22/04/2014
DOCENTE
M.C.I.C. Juan Carlos Flores Pauln
456789 :9 ;5* <;=645*
OBJETIVO DE LA PRCTICA
Practicar la reutilizacin de cdigo mediante la herencia.
CRITERIOS DE EVALUACIN
ETAPAS VALOR
CRITERIOS Y/O PARMETROS
DE EVALUACIN
PRODUCTO A
ENTREGAR POR ETAPA
FECHA DE
ENTREGA
1 50 Etapa completa Cdigo en Java 22/04/2014
2 50 Documento Reporte de practica 28/04/2014
TOTAL
100
Formato de Reporte de
Practica
!"#$"%$&'( $" *%+,$-(+ ./-01,(2%/"(3$+
PROCEDIMIENTO DE LA PRCTICA
NOMBRE DE LA PRCTICA
Herencia
INTRODUCCIN
En la programacin orientada a objetos existe la herencia, esta es, una de las caractersticas
principales de este paradigma de programacin. La herencia es una forma de reutilizacin del
software en la que nuevas clases, se crean absorbiendo los datos (atributos) y mtodos
(comportamientos) de una clase existente, y se mejoran con nuevas capacidades, o con
modificaciones en las capacidades ya existentes. La herencia ahorra tiempo durante el desarrollo
de programas. Tambin fomenta la reutilizacin de software probado y depurado de alta calidad,
el cual aumenta la probabilidad de que un sistema se implemente con efectividad.
Al crear una clase heredada, en vez de declarar miembros (variables y mtodos) completamente
nuevos, el programador puede designar que la nueva clase herede los miembros 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 de futuras herencias. Una clase derivada generalmente agrega sus propios
atributos y mtodos, por lo tanto es ms especfica que una clase base y representa a un grupo
ms especializado de objetos. Generalmente la subclase exhibe los comportamientos (mtodos)
de su superclase junto con sus propios comportamientos. La clase base, es la superclase directa a
partir de la cual la subclase hereda en forma explcita. Una clase base indirecta se pude heredar
de dos o ms niveles superiores construyendo lo que se llama jerarqua de clases, la cual
define las relaciones de herencia entre las clases.
Herencia Simple:
La herencia simple es uno de los aspectos de la programacin orientada a objetos que se ha
definido formalmente. La herencia simple, se puede definir como la herencia en la cual una clase
hereda los mtodos y atributos de solo una clase base. En ste tipo de herencia una clase se
extiende a partir de una sola superclase.
Herencia Mltiple:
La herencia mltiple, es la posibilidad de que un objeto tenga la herencia de ms de una clase. La
herencia mltiple es una de las oportunidades que ofrece el lenguaje C++; esta ventaja no est
implementada directamente en Java pero se puede sustituir con la implementacin de Interfaces,
e incluso en C++ es preferible evitar este tipo de herencia ya que puede complicar mucho la
depuracin de programas. Por ejemplo, tomamos una clase llamada Animal, la cual se hereda en
una clase Toro y de esta clase se quiere heredar una nueva clase junto con la clase
mquina_motorizada, sera como obtener el objeto toro mecnico a partir de una mquina
motorizada (aparato con motor) y un toro (animal). En realidad, lo que se pretende es copiar los
mtodos, es decir, pasar la funcionalidad del toro de verdad al toro mecnico, con lo cual no sera
necesaria la herencia mltiple sino simplemente la comparacin de funcionalidad.
Formato de Reporte de
Practica
!"#$"%$&'( $" *%+,$-(+ ./-01,(2%/"(3$+
Declaracin de la Clase Base y la Clase Derivada en Java:
//Clase base
public class A {
// Atributos de A
public A() {
}
// Mtodos de A
}
//Clase derivada, la palabra reservada
// extends indican la herencia.
public class B extends A {
// Atributos de B
public B() {
}
// Mtodos de B
}
BIBLIOGRAFA
1. J Deitel y Deitel. Como programar en Java. Prentice Hall. (Quinta edicin)
2. Introduccin a la programacin con C#, por Nacho Cabanes, Revision 0.97, 2012
MATERIAL (ALUMNO) EQUIPO (LABORATORIO)
Ninguno Computadora
Software NetBeans y JDK
Formato de Reporte de
Practica
!"#$"%$&'( $" *%+,$-(+ ./-01,(2%/"(3$+
DESARROLLO Y PROCEDIMIENTO
DESARROLLO
Etapa 1
El alumno diseara con ayuda del docente una clase de la cual creara una clase derivada con sus atributos y
mtodos respectivamente en Java.
Etapa 2
El alumno elaborara un reporte completo con el desarrollo de la prctica.
PROCEDIMIENTO
Definir una nueva clase de objetos a partir de otra ya existente. Crear una clase "Porton" a partir de la clase
"Puerta". Un portn tendr las mismas caractersticas que una puerta (ancho, alto, color, abierto o no), pero
adems se podr bloquear, lo que supondr un nuevo atributo y nuevos mtodos para bloquear y
desbloquear:
!"#$%& class Pueita (
!)%*+,- int ancho. Ancho en centimetios
!)%*+,- int alto. Alto en centimetios
!)%*+,- int coloi. Coloi en foimato RuB
!)%*+,- boolean abieita. Abieita o ceiiaua
!"#$%& /"-),+0 1 (
ancho = 0;
alto = 0;
color = 0;
abierta = false;
2
!
(cieai un segunuo constiuctos con paimetios ue entiaua)
!"#$%& voiu setAncho (int ancho) (
this.ancho = ancho;
2
!"#$%& int getAncho ( )(
return this.ancho;
2
!
(ueclaiai mtouos "set y get" paia los 4 iestantes atiibutos)
!"#$%& voiu Abiii0 1 (
abieita 3 ,)"-.
2
!"#$%& voiu Ceiiai0 1 (
abieita 3 4+$5-.
2
!"#$%& voiu NostiaiEstauo0 1 (
System.out.piintln0"Ancho: " + ancho1.
System.out.piintln 0"Alto: " + alto1.
System.out.piintln 0"Coloi: " + coloi1.
System.out.piintln 0"Abieita: " + abieita1.
2
2 Final ue la clase Pueita
Formato de Reporte de
Practica
!"#$"%$&'( $" *%+,$-(+ ./-01,(2%/"(3$+
Procedimiento de la Prctica Pgina 1
PROCEDIMIENTO DE LA PRCTICA
CLCULOS Y EVIDENCIAS GRFICAS
CONCLUSIONES
Ciencia Tecnica - Progreso