Está en la página 1de 4

ESCUELA ACADEMICO PROFESIONAL DE

INGENIERIA DE SISTEMAS

GUÍA DE LABORATORIO N° 09
Escuela Profesional: Ingeniería de Sistemas. Asignatura: Programación Orientada a Objetos
Ciclo y Turno: Semestre Académico: 2018 - 3
Docente: Ing. Yuri A. Pomachagua Basualdo Fecha: 13/10/2018

Sesión 09: Polimorfismo, Clases Abstractas e Interfaces

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. Las clases abstractas contienen métodos abstractos y métodos
concretos y la Interface contiene métodos abstractos al 100%.

I. OBJETIVOS
1. Codificar, compilar y ejecutar los ejercicios de aplicación (Clases Abstractas e
Interface)
2. Conocer la estructura de un programa en Java.

II. EQUIPOS Y MATERIALES


Computadora personal.
Programa NetBeans IDE 8.2 correctamente instalado.

III. METODOLOGIA Y ACTIVIDADES


 Codificar los ejercicios desarrollados en el aula.
 Presentar avances y ejecución de cada uno de los ejercicios al docente o jefe de
práctica encargado para la calificación correspondiente.

IV. IMPORTANTE
 Antes de comenzar a manipular el NetBeans 8.2 crear siempre, una carpeta, donde
se guardarán todas las aplicaciones realizadas en el presente laboratorio con el
nombre Laboratorio-09.

Realizar los siguientes programas con Programación Orientada a Objetos utilizando clases
abstractas, Interfaces y Polimorfismo

1. Cree una clase llamada Frazada con los campos tamaño, color, material y precio. Incluya
un constructor que establezca valores predeterminados para los campos como Doble,
Blanco, algodón y $ 30.00. Incluir un método set para cada uno de los tres primeros
campos. El método que establece el tamaño agrega $ 10 al precio base para una frazada
doble, $ 25 para una frazada tamaño Queen y $ 40 para un King. El método que
establece el material agrega $ 20 al precio de la lana y $ 45 al precio de la cachemira. En
otras palabras, el precio de una frazada de cachemira tamaño King es de $ 115. Cuando
el tamaño o el material no sean válidos, restablezca la cobertura a los valores
predeterminados. Incluya un método toString() que devuelva una descripción de la
frazada. Guarde el archivo como Frazada.java.

Página 1 de 4
ESCUELA ACADEMICO PROFESIONAL DE
INGENIERIA DE SISTEMAS

Cree una clase hija llamada FrazadaElectrónica que extienda de la clase Frazada e
incluya dos campos adicionales: uno para el número de configuraciones de calor y otro
para saber si la frazada electrónica tiene una función de apagado automático. Los
valores predeterminados son ajuste de calor y no hay apagado automático. Incluya los
métodos get y set para los campos. La cantidad de configuraciones no debe ser menor
que uno o mayor que cinco; si es así, use la configuración predeterminada de 1. Agregue
una prima de $ 5.75 al precio si la frazada tiene la función de apagado automático.
También incluya un método toString () que llama al método toString () de la clase
primaria y combina el valor devuelto con datos sobre los nuevos campos para devolver
una descripción completa de las características. Guarde el archivo como
FrazadaElectrónica.java.

Cree una aplicación que declare una frazada de cada tipo y demuestre cómo funcionan
los métodos. Guarde el archivo como PrinFrazada.java.

2. Una compañía paga semanalmente a sus empleados, quienes se dividen en cuatro tipos:
empleados asalariados que reciben un salario semanal fijo, sin importar el número de
horas trabajadas; empleados por horas, que perciben un sueldo por hora y pago por
tiempo extra (es decir, 1.5 veces la tarifa de su salario por horas), por todas las horas
trabajadas que excedan a 40 horas; empleados por comisión, que perciben un porcentaje
de sus ventas, y empleados asalariados por comisión, que obtienen un salario base más
un porcentaje de sus ventas. Para este periodo de pago, la compañía ha decidido
recompensar a los empleados asalariados por comisión, agregando un 10% a sus
salarios base. La compañía desea escribir una aplicación que realice sus cálculos de
nómina en forma polimórfica.

Se tiene el siguiente Diagrama de Clases

Página 2 de 4
ESCUELA ACADEMICO PROFESIONAL DE
INGENIERIA DE SISTEMAS

Empleado
-Nombre
-Apellidos
-DNI
Ingresos()

EmpleadoAsalariado EmpleadoPorComisión EmpleadoPorHoras


-salarioSemanal -VentasBrutas - -Sueldo -Horas
TarifaCom

EmpleadoBaseMasComisión
-VentasBrutas –tarifaCom -
salarioBase

3. La Compañía Prestamista de Construcción Utp. otorga préstamos de hasta $ 100,000


para proyectos de construcción. Hay dos categorías de Préstamos: Individuales y
Empresariales.
Escriba una aplicación que haga un seguimiento de todos los nuevos préstamos de
construcción. La aplicación también debe calcular el monto total adeudado en la fecha de
vencimiento (monto original del préstamo + cuota del préstamo). La aplicación debe
incluir las siguientes clases.
Préstamo es una clase abstracta que implementa la interfaz ConstanteSPrestamo. El
préstamo incluye un número de préstamo, el apellido del cliente, el monto del préstamo,
la tasa de interés y el plazo. El constructor requiere datos para cada uno de los campos,
excepto la tasa de interés. No permita montos de préstamo superiores a $ 100,000.
Forzar cualquier plazo de préstamo que no sea uno de los tres definidos en la Interface
ConstantesPrestamo a un préstamo a corto plazo de 1 año. Cree un método toString ()
que muestre todos los datos del préstamo.
ConstantesPrestamo es una interfaz pública que ncluye valores constantes para
préstamos a corto plazo (1 año), a mediano plazo (3 años) y a largo plazo (5 años).
También contiene constantes para el nombre de la empresa y el monto máximo del
préstamo.
PrestamoEmpresas es una clase pública que extiende de Préstamo. El constructor de
establece la tasa de interés en 1 por ciento sobre la tasa de interés preferencial actual.
PréstamoPersonal es una clase pública que extiende de Préstamo. El constructor
establece la tasa de interés en 2 por ciento sobre la tasa de interés preferencial actual.

Página 3 de 4
ESCUELA ACADEMICO PROFESIONAL DE
INGENIERIA DE SISTEMAS

PrinPrestamo es una aplicación que crea una matriz de cinco préstamos. Solicite al
usuario la tasa de interés preferencial actual. Luego, en un bucle, solicite al usuario un
tipo de préstamo y toda la información relevante para ese préstamo. Almacena los
objetos de préstamo creados en la matriz. Cuando se complete la entrada de datos,
muestre todos los préstamos.

Página 4 de 4