Вы находитесь на странице: 1из 11

ESCUELA ACADEMICO

PROFESIONAL DE INGENIERIA DE
SISTEMAS

Sesin 04: Polimorfismo


Tratamiento de N
excepciones
GUA DE yLABORATORIO
04
Escuela Profesional: Ingeniera de Sistemas.
Ciclo y Turno: Cuarto Maana-Tarde-Noche
Docente: Ing. Marcelino Estrada Aro
INTRODUCCION

Asignatura: Prog. Orientada a Objetos


Semestre Acadmico: 2015-I

El polimorfismo es una caracterstica de los objetos, y permite obtener muchas mltiples


formas con la finalidad de acceder a los diferentes mtodos y atributos a travs de una solo
declaracin. El tratamiento de excepciones permite manejar los errores generados en
tempo de ejecucin.
I. OBJETIVOS
1. Codificar, compilar y ejecutar los ejercicios de aplicacin.
2. Conocer la estructura de un programa visual en Java.
II. EQUIPOS Y MATERIALES
Computadora personal.
Programa NetBeans IDE 6.9.1 correctamente instalado.
III. METODOLOGIA Y ACTIVIDADES
Codificar los ejercicios desarrollados en el aula.
Presentar avances y ejecucin de cada uno de los ejercicios al docente o jefe de
prctica encargado para la calificacin correspondiente.
IV. IMPORTANTE
Antes de comenzar a manipular el NetBeans 6.9.1 crear siempre, una carpeta,
donde se guardarn todas las aplicaciones realizadas en el presente laboratorio con
el nombre LABORAT-04.
V. MANEJO DEL SOFTWARE
Implemente una clase padre abstracta de nombre Empleado con los siguientes
atributos: DNI, apellidos, nombres, as como su constructor correspondiente que
actualice su informacin y considere un mtodo para mostrar la informacin de los
atributos as como sus mtodos getter y setter (Encapsulamiento). As como tambin
defina mtodos abstractos para los ingresos, bonificacin y descuentos, y tambin
mtodos no abstractos para el sueldo y la impresin de la informacin del empleado.
Luego construya una clase hija de nombre EmpleadoVendedor con los siguientes
atributos: monto vendido y la tasa de comisin y su respectivo constructor y los
mtodos setter y getter (encapsulamiento). Para esta clase desarrolle los mtodos
abstractos heredados con las siguientes caractersticas y que permita hacer lo
siguiente:

Calcular sus ingresos basados en montovendido*tasacomision.


Calcular su bonificacin de la siguiente manera: si el monto vendido es menor
que 1000 no tendr bonificacin, si estas entre 1000 y 5000 ser el 5% de sus
ingresos, si supera los 5000 su bonificacin 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 afiliacin (AFP y SNP) e incluya su constructor y los mtodos
setter y getter (encapsulamiento). Para esta clase desarrolle los mtodos abstractos
Pg. 1 de 11

heredados con las siguientes caractersticas y que permita hacer lo siguiente:


Retornar el sueldo base, mtodo que llamara ingresos
Calcular el descuento basado en: si la afiliacin es AFP ser el 15% del sueldo
base sino ser el 11% del sueldo base.
No hay bonificacin es decir la bonificacin es 0.
El sueldo neto se calculara como: ingresos descuentos
Adems recibir asignacin de movilidad si sus ingresos son menores de 1000
soles recibir 50 soles sino recibir 40 soles.
Considere los objetos necesarios para utilizar la funcionalidad de la clase
SOLUCION
Utilice la paleta de componentes y construya el siguiente diseo:

Pg. 2 de 11

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

Del enunciado la clase Empleado tiene la siguiente informacin:

Pg. 3 de 11

La clase hija EmpleadoVendedor tiene la siguiente informacin

Pg. 4 de 11

La clase hija EmpleadoPermanente tiene la siguiente informacin

A continuacin complete lo siguientes cdigos en el Editor de Cdigo

Pg. 5 de 11

METODOS PARA EL MANEJO DE EXCEPCIONES

Pg. 6 de 11

Pg. 7 de 11

Presione Shift+F6 y el aplicativo mostrar la siguiente ventana

EJERCICIO PROPUESTO
1.

Construya una clase abstracta de nombre Constructor que tiene los siguientes atributos:
cdigo, apellidos, nombres, condicin de contrato (Estable, contratado), especialidad, incluya
sus constructores. Adems construya sus mtodos getter y setter (Encapsulamiento) y
tambin declare los mtodos abstractos como sueldo base, descuentos y bonificacin,
adems construya mtodos no abstractos como clculo del sueldo bruto: sueldo base +
bonificacin y del sueldo neto que se calcula de: sueldo bruto descuentos., adems de un
mtodo que permita visualizar la informacin.
Construya una interface que permita manejar las siguientes constantes el descuento de
porcentajes del 17% para el AFP y 5% para Essalud que se implementara sobre la clase
Constructor.
Luego construya la Clase IngenierioCivil de la clase Constructor que tiene los siguientes
atributos: Tipo de Actividad (Supervisin de Obras y Supervisin de Vas) , Numero de Obras
Asignadas y contador con atributo. Construya su constructor que actualizar los datos de la
clase padre as como actualizara el atributo cdigo, heredado de la Clase Constructor con un
cdigo autogenerado y sus mtodos getter y setter. Para esta clase desarrolle los mtodos
abstractos heredados y que permitan hacer lo siguiente:

El sueldo base se calcula de la


siguiente tabla
Especialidad
Estructuras
Recursos Hdricos
Ingeniera Vial

% de Bonificacin
16%
18%
22%

Condicin
de Contrato
Estable
Contratado

SUELDO BASE
Supervisin
Supervisin de
de Obras
Vas
4000
6000
2000
4500

La bonificacin es un porcentaje de su sueldo


base en base a su especialidad
tal y como se muestra en la siguiente tabla:

Pg. 8 de 11

Los descuentos se aplica de acuerdo a las constantes


establecidas en la interface
Esta clase tendr un mtodo propio que asignara un
monto de movilidad de acuerdo al nmero de obras
asignadas

Numero de
Obras
< 17
>=18

Monto
300
600

Otro mtodo propio que permita generar un cdigo con la siguiente caracterstica: INGC00001,
INGC00002
Luego construya una subclase Arquitecto de la clase Constructor que tendr los atributos
como: Nmero de Proyectos Diseados, Cargo (Direccin de Obras y Edificador Industrial) y
un contador con atributo esttico. Construya su constructor que actualizar los datos de la
clase padre as como actualizara el atributo cdigo, heredado de la clase Constructor con un
cdigo autogenerado y sus mtodos getter y setter. Para esta clase desarrolle los mtodos
abstractos heredados y que permitan hacer lo siguiente:
El sueldo base se
la siguiente tabla
acuerdo
a
especialidad
condicin
contrato:

da
de
la
y
de

Condicin
de Contrato
Estable
Contratado

La bonificacin que recibir est de


acuerdo al cargo:

SUELDO BASE
Restauracin
Materiales de
y
Construccin
Rehabilitacin
4600
7500
3980
4600

Cargo
Director de Obras
Edificador Industrial

Paisajismo
y jardinera
4860
4600

% de Bonificacin
25%
29%

.
El Arquitecto no recibe descuento por Essalud ms si de AFP.
Tendr su mtodo propio que permita generar un cdigo con la siguiente caracterstica:
ARQ00001, ARQ00002
NOTA: Ambas clases tendrn mtodos recargados para mostrar la informacin de sus datos
adicionales.
Construya el aplicativo con los objetos necesarios para utilizar la funcionalidad de las clases y
subclases implementadas utilice el tratamiento de excepciones para verificar los datos de entrada
del tipo numrico y utilice polimorfismo.

2. Construya una clase abstracta de nombre Empleado que tiene los siguientes atributos:
apellidos, nombres, sexo y DNI, incluya sus constructores. Adems construya sus mtodos
getter y setter (Encapsulamiento) y tambin declare los mtodos abstractos como sueldo base
y bonificacin, adems construya mtodos no abstractos como calculo del sueldo bruto:
sueldo base + bonificacin y del sueldo neto que se calcula de: sueldo bruto descuentos.
Construya una interfase que permita manejar las siguientes constantes el descuento de
porcentajes del 17% para el AFP y 5% para Essalud. Que sern solo aplicables a la subclase
Operario y Administrativo.
Luego construya la subclase Operario de la clase Empleado que tiene los atributos como:
Cdigo (que ser autogenerado ejm: O0001, O0002, etc.), categora (A, B y C), Turno de labor
(Maana, tarde y noche), horas adicionales laborables. Construya su constructor y los mtodos
Pg. 9 de 11

setter y getter (encapsulamiento). Para esta clase desarrolle los mtodos abstractos heredados
y que permitan hacer lo siguiente:
El sueldo base se calcula de la siguiente tabla
Categora
A
B
C

SUELDO BASE
MAANA
TARDE
NOCHE
1200
1300
1800
1400
1500
2000
1600
1700
2200

Las bonificaciones al operario se realizan segn la horas adicionales laborables por cada hora
adicional al operario le pagan 12 soles cualquiera que sea su categora y su horario de laboral.
El descuento no se reciben descuentos.
Luego construya una subclase Administrativo de la clase Empleado que tendr los atributos como:
Cdigo (que ser autogenerado ejm: A0001, A0002, etc.), Categora (Secretaria y Asistente), Condicin
(Contratado, Estable, Servicios No personales). Construya su constructor y los mtodos setter y getter
(encapsulamiento). Para esta clase desarrolle los mtodos abstractos heredados y que permitan hacer
lo siguiente:
El sueldo base se calcula de la siguiente tabla
Sueldo base
Categora
Secretaria
Asistente

Contratado

Estable

2000
2500

3000
3900

Servicios no
Personales
1800
2200

Los administrativos no reciben bonificaciones.


El descuento se aplica de acuerdo a las constantes establecidas en la interfase.
Luego construya una subclase abstracta Directivos de la clase Empleado que tendr el atributo: rea
(Contabilidad, Tecnologas de Informacin y Planificacin) y un mtodo abstracto llamado Prima
Luego construya la subclase Jefes de la clase Directivos que maneja los siguientes atributos como:
Cdigo (que ser autogenerado ejm: D0001, D0002, etc.) y cargo (Gerente y Subgerente). Construya
su constructor y los mtodos setter y getter (encapsulamiento). Para esta clase desarrolle los mtodos
abstractos heredados y que permitan hacer lo siguiente:
El sueldo base se calcula de la siguiente tabla
Cargo
Gerente
Subgerente

Contabilidad
6000
5000

SUELDO BASE
Tecnologas de
Informacin
8000
7000

Planificacin
7000
6000

La bonificacin ser de 2000 soles cualquiera que sea su categora y rea.


Los descuentos se aplica de acuerdo a las constantes establecidas en la interfase
La prima para cada Jefe se esta de acuerdo a su cargo y esta se calcula de su sueldo bruto de
la siguiente tabla:
Cargo
Gerente
Subgerente

% de Prima
23%
17%

Esta clase tendr un mtodo propio que asignara un monto de movilidad de acuerdo al cargo

Pg. 10 de 11

Cargo
Gerente
Subgerente

Monto
700
400

Construya el aplicativo con los objetos necesarios para utilizar la funcionalidad de las clases y
subclases implementadas utilice el tratamiento de excepciones para verificar los datos de entrada
del tipo numrico y utilice polimorfismo.

Pg. 11 de 11