Está en la página 1de 14

ESCUELA ACADEMICO PROFESIONAL DE

INGENIERIA DE SISTEMAS

GUÍA DE LABORATORIO N° 09
Escuela Profesional: Ingeniería de Sistemas. Asignatura: Metodología de la programación
Ciclo y Turno: Segundo – Mañana-Tarde-Noche Semestre Académico: 2021-I

Sesión 09: Taller Herencia, Polimorfismo

INTRODUCCION

El polimorfismo es una característica de los objetos, y permite obtener muchas múltiples


formas con la finalidad de acceder a los diferentes métodos y atributos a través de una solo
declaración.

I. OBJETIVOS
Codificar, compilar y ejecutar los ejercicios de aplicación.

1) APLICANDO HERENCIA

Implemente una clase de nombre Empleado con los siguientes atributos: DNI,
apellidos, nombres, así como su constructor correspondiente que actualice su
información y considere un método para mostrar la información de los atributos.

Luego construya una clase hija de nombre EmpleadoVendedor con los siguientes
atributos: monto vendido y la tasa de comisión y su respectivo constructor. Para esta
clase construya los siguientes métodos que permita:

 Calcular sus ingresos basados en montovendido*tasacomision.


 Calcular su bonificación de la siguiente manera: si el monto vendido es menor que
1000 no tendrá bonificación, si estas entre 1000 y 5000 será el 5% de sus
ingresos, si supera los 5000 su bonificación será del 10% de sus ingresos.
 Calcular su descuento de la siguiente manera: si sus ingresos es menor a 1000 su
descuento será del 11% de sus ingresos sino será el 15% de sus ingresos.
 Calcular su sueldo neto como: ingresos + bonificaciones - descuentos

Luego construya otra clase hija de nombre EmpleadoPermanente con los siguientes
atributos: sueldo base y afiliación (AFP y SNP) e incluya su constructor. Construya los
siguientes métodos permitan:

 Retornar el sueldo base, método que llamara ingresos

Pág. 1 de 14
 Calcular el descuento basado en: si la afiliación es AFP será el 15% del sueldo
base sino será el 11% del sueldo base.
 El sueldo neto se calculara como: ingresos - descuentos

Considere los objetos necesarios para utilizar la funcionalidad de la clase

Solución

Utilice la paleta de componentes y construya el siguiente diseño:

Pág. 2 de 14
Observe la grafica y su proyecto quedara de la siguiente forma que constara de 3 clases y un
formulario. Observe al lado derecho el Inspector de Objetos para guiarse de los nombres de
los objetos

Pág. 3 de 14
Del enunciado la clase Empleado tiene la siguiente información:

La clase hija EmpleadoVendedor tiene la siguiente información

Pág. 4 de 14
La clase hija EmpleadoPermanente tiene la siguiente información

Pág. 5 de 14
A continuación complete lo siguientes códigos en el Editor de Código

Pág. 6 de 14
Pág. 7 de 14
Presione Shift+F6 y el aplicativo mostrará la siguiente ventana

Pág. 8 de 14
2) APLICANDO POLIMORFISMO

Implementar una aplicación que simule el comportamiento que tendrían los diferentes integrantes de la
selección peruana de fútbol; tanto los Futbolistas como el cuerpo técnico (Entrenadores, Masajistas,
etc…). Para este ejemplo nos vamos a basar en el siguiente diagrama de clases:

Lo primero que vemos es la clase “IntegranteSeleccionFutbol” que es una Interface en la que tiene
definido cuatro métodos (es decir una clase abstracta pura). Como se ha dicho en esta clase solo se
definen los métodos pero no se implementan.

Lo siguiente que vemos en el diagrama de clases es la clase “SeleccionFutbol” que es una clase
abstracta que utiliza (implements) la Interface “IntegranteSeleccionFutbol”. Al ser esta una clase
abstracta no se puede instanciar y por tanto en ella no es necesario implementar los métodos de la
“Interface”; pero si será obligatorio implementarlo en sus clases hijas (Futbolista, Entrenador y
Masajista). Si bien no es obligatoria la implementación de métodos en la clase abstracta, en este caso
si lo vamos hacer, para que solamente haya que implementar los métodos que queramos
especializarlos en las clases hijas

Pág. 9 de 14
SOLUCION

construya el siguiente diseño:

Donde IntegranteseleccionFutbol,java es una Interface, SeleccionFutbol.java es una clase


abstracta , además debe crear otras tres clases: Entrenador,Futbolista y Masajista.
A continuación se muestra el código de dichas clases e Interface:

Pág. 10 de 14
Pág. 11 de 14
La clase Entrenador

La clase futbolista

La clase Masajista

Pág. 12 de 14
El Main

Pág. 13 de 14
Pág. 14 de 14

También podría gustarte