Sie sind auf Seite 1von 10

DEPARTAMENTO DE ENERGÍA Y MECÁNICA

CARRERA DE INGENIERÍA AUTOMOTRIZ

INFORME DE LABORATORIO No. 22

ASIGNATURA: CÓDIGO: NRC: NIVEL: SEMANA CLASE: DURACIÓN:


PROGRAMACION II COMP15083 2099 II VIII 6 HORAS
DEPARTAMENTO: CARRERA: ÁREA DEL CONOCIMIENTO: TEMA:
ENERGÍA Y MECÁNICA INGENIERÍA PROGRAMACIÓN HERENCIA
AUTOMOTRIZ
DOCENTE: ALUMNO: FECHA REALIZACIÓN: EJE DE FORMACIÓN:
ING. LUIS ALBERTO GUERRA PEÑA OBACO RONNY 15-JUNIO-2016 PROFESIONAL
CRUZ MsC ANTONIO FECHA DE ENTREGA:
16-JUNIO-2016

A. FUNDAMENTACIÓN: HERENCIA

Herencia

La herencia nos permite definir una clase como extensión de otra es decir, una súper clase deriva o
hereda ciertos atributos y funciones a una subclase
Una característica esencial de la herencia es que permite evitar la duplicidad de código, es decir
aquello que es común a varias clases, se escribe una sola vez (en la súper clase o clase base).
Una clase que deriva o hereda de otra clase se indica mediante la palabra reservada extends
En java muchas clases pueden heredar de una misma súper clase y a su vez una subclase puede
convertirse en súper clase de otra.

La herencia es una técnica de abstracción que nos permite agrupar objetos con características
comunes.

B. DESCRIPCIÓN:
Éste laboratorio está formado por 2 ejercicios:

1. Diseñe un algoritmo que utilice herencias

2. Diseñe un algoritmo que utilice herencia y Scanner

C. OBJETIVO:
Conocer el funcionamiento correcto de las herencias y en qué circunstancias utilizarlas

D. PROYECTO:
Analizar el funcionamiento de las herencias de forma correcta dentro del lenguaje “java” en
base a los requerimientos.

E. TAREAS A REALIZAR:
Realizar los algoritmos solicitados.

F. ANÁLISIS:

EJERCICIO 1:

ANÁLISIS DE DATOS:

private nombre String;


private apellido String
private edad int
private idProfesor String

ANÁLISIS DE FUNCIONES:

public Persona ();


public getNombre ();
public getApellido ();
public getEdad ();
public Profesor ();
public setIdProfesor ();
public getIdProfesor ();
public MostrarNombreApellidoCarnet();

EJERCICIO 2:

ANÁLISIS DE DATOS:

private nombre String;


private apellido String
private edad int
private nom String
private ape String
private ed int
private idProfesor String

ANÁLISIS DE FUNCIONES:

public Scanner ();


public Persona ();
public getNombre ();
public getApellido ();
public getEdad ();
public Profesor ();
public setIdProfesor ();
public getIdProfesor ();
public MostrarNombreApellidoCarnet();

G. DISEÑO:

Ejercicio 1:

DISEÑO LÓGICO:

Persona
- nombre :
- apellido :
- edad :
+ Persona ()
+ getNombre ()
+ getApellido ()
+ getEdad ()

Profesor
- idProfesor :
+ Profesor ()
+ setIdProfesor ()
+ getIdProfesor ()
+ mostrarNombreApellidoCarnet ()

DISEÑO FÍSICO:
Persona
- nombre : String
- apellido : String
- edad : int
+ Persona () : String
+ getNombre () : String
+ getApellido () : String
+ getEdad () : int

Profesor
- idProfesor : String
+ Profesor () : String
+ setIdProfesor () : void
+ getIdProfesor () : String
+ mostrarNombreApellidoCarnet () : String

Ejercicio 2:

DISEÑO LÓGICO:

Persona
- nombre :
- apellido :
- edad :
- nom :
- ape :
- ed :
+ Scanner ()
+ Persona ()
+ getNombre ()
+ getApellido ()
+ getEdad ()

Profesor
- idProfesor :
- id :
+ Scanner ()
+ Profesor ()
+ setIdProfesor ()
+ getIdProfesor ()
+ mostrarNombreApellidoCarnet ()

DISEÑO FÍSICO:
Persona
- nombre : String
- apellido : String
- edad : int
- nom : String
- ape : String
- ed : int
+ Scanner () : String
+ Persona () : String
+ getNombre () : String
+ getApellido () : String
+ getEdad () : int

Profesor
- idProfesor : String
- id : String
+ Scanner () : String
+ Profesor () : String
+ setIdProfesor () : void
+ getIdProfesor () : String
+ mostrarNombreApellidoCarnet () : String

H. IMPLEMENTACIÓN:

Ejercicio 1:

package lab36_herencia1;

/**
*
* @author PEÑA RONNY
*/
class Persona{
private String nombre, apellido;
private int edad;
//Implementacion de los metodos
public Persona(String nombre, String apellido,int edad){//Constructor
this.nombre=nombre;
this.apellido=apellido;
this.edad=edad;
}
public String getNombre(){
return nombre;

}
public String getApellido(){
return apellido;
}
public int getEdad(){
return edad;
}
}
class Profesor extends Persona{
//Implementacion del atributo de la subclase
private String IdProfesor;

//implementacion de los metodos de la subclase


public Profesor(String nombre, String apellido, int edad){
super(nombre,apellido, edad);
IdProfesor="001prof";
}
public void setIdProfesor(String IdProfesor){
this.IdProfesor=IdProfesor;
}
public String getIdProfesor(){
return IdProfesor;
}
public void mostrarNombreApellidoCarnet(){
System.out.println("Nombre del Profesor: "+getNombre()+" "+getApellido()+"Id del
profesor: "+getIdProfesor()+" Edad del Profesor: "+getEdad());
}
}
public class Lab36_Herencia1 {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
Profesor ObjetoProfesor=new Profesor("Luis Gustavo","Hernandez Gonzales ",35);
ObjetoProfesor.setIdProfesor("001prof");
ObjetoProfesor.mostrarNombreApellidoCarnet();
}

}
Ejercicio 2:

* and open the template in the editor.


*/
package lab37_herenciaporscanner;
/**
* @author Peña Ronny
*/
import java.util.Scanner;
class Persona{
private String nombre, apellido;
private int edad;
public Persona(String nombre, String apellido,int edad){//Constructor
this.nombre=nombre;
this.apellido=apellido;
this.edad=edad;
}
public String getNombre(){
return nombre;

}
public String getApellido(){
return apellido;
}
public int getEdad(){
return edad;
}
}
class Profesor extends Persona{
private String IdProfesor;
public Profesor(String nombre, String apellido, int edad) {
super(nombre, apellido, edad);
IdProfesor="001prof";
}
public void setIdProfesor(String IdProfesor){
this.IdProfesor=IdProfesor;
}
public String getIdProfesor(){
return IdProfesor;
}
public void mostrarNombreApellidoCarnet(){
System.out.println("Nombre del Profesor: "+getNombre()+" "+getApellido()+"\nId del
profesor: "+getIdProfesor()+"\nEdad del Profesor: "+getEdad());
}

public class Lab37_HerenciaporScanner {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
Scanner lee=new Scanner(System.in);
String nom,ape,id;
int ed;
System.out.println("\tDatos de Profesor\n");
System.out.println("Ingrese sus nombres");
nom=lee.next();
System.out.println("Ingrese sus apellidos");
ape=lee.next();
System.out.println("Ingrese su edad");
ed=lee.nextInt();
System.out.println("Ingrese su Id");
id=lee.next();
System.out.println("Ingrese su Id");
System.out.println("\n\tDATOS DE PROFESOR\n");
Profesor ObjetoProfesor=new Profesor(nom,ape,ed);
ObjetoProfesor.setIdProfesor(id);
ObjetoProfesor.mostrarNombreApellidoCarnet();
}

I. PRUEBAS:

Ejercicio 1:

PRUEBA DE CAJA NEGRA:


PRUEBA DE CAJA BLANCA:

Ejercicio 2:

PRUEBA DE CAJA NEGRA:

PRUEBA DE CAJA BLANCA:


J. Reporte

EJERCICIO 1

REQUERIMIENTOS FUNCIONALES ANÁLISIS DISEÑO IMPLEMENTACIÓN PRUEBAS TOTAL


Persona ();

getNombre ();

getApellido ();

getEdad ();

Profesor ();

setIdProfesor ();

getIdProfesor ()

mostrarNombreApellidoCarne
t();

CALIFICACIÓN

EJERCICIO 2

REQUERIMIENTOS FUNCIONALES ANÁLISIS DISEÑO IMPLEMENTACIÓN PRUEBAS TOTAL


Scanner ();

Persona ();

getNombre ();

getApellido ();

getEdad ();

Profesor ();

setIdProfesor ();
getIdProfesor ()

mostrarNombreApellidoCarne
t();

CALIFICACIÓN

K. RESULTADOS Y CONCLUSIONES:

 Se ha logrado realizar correctamente los algoritmos solicitados utilizando Herencias

L. ACTIVIDADES SEGÚN CRONOGRAMA:

VIGESIMO SEGUNDA ENTREGA: 16 de junio de 2016


HERENCIAS

M. REFERENCIAS BIBLIOGRÁFICAS:

Nombre de la obra: Apuntes de Clase.


Nombre de autor (es): Ing. Luis Alberto Guerra
Editorial: ESPE
Año de edición: 2016

[online]: http://www.espe.edu.ec
Tema: Herencias

Das könnte Ihnen auch gefallen