GL-N° 04- POO

11
Sesión 04: Polimorfismo y Tratamiento de excepciones INTRODUCCION El polimorfismo es una característica de los objetos, y permite obtener muchas múl formas con la finalidad de acceder a los diferentes métodos y atributos a través d declaración. El tratamiento de excepciones permite manejar los errores ge tempo de ejecución. I. OBJETIVOS 1. odificar, compilar y ejecutar los ejercicios de aplicación. !. onocer la estructura de un programa visual en "ava. II. EQUIPOS Y MATERIALES omputadora personal. #rograma $et%eans &'E (.).1 correctamente instalado. III. METODOLOGIA Y ACTIVIDADES odificar los ejercicios desarrollados en el aula. #resentar avances y ejecución de cada uno de los ejercicios al docente o jefe pr*ctica encargado para la calificación correspondiente. IV. IMPORTANTE +ntes de comen ar a manipular el $et%eans (.).1 crear siempre, una carpeta, donde se guardar*n todas las aplicaciones reali adas en el presente laborator el nombre -+% /+0 23. V. MANEJO DEL SOFTWARE &mplemente una clase padre abstracta de nombre Empleado con los siguientes atributos4 '$&, apellidos, nombres, así como su constructor correspondie actualice su información y considere un método para mostrar la información de lo atributos así como sus métodos getter y setter 6Encapsulamiento7. +sí como tambi defina métodos abstractos para los ingresos, bonificación y descuentos, y tambié métodos no abstractos para el sueldo y la impresión de la información del emplea -uego construya una clase hija de nombre EmpleadoVededo! con los siguientes atributos4 monto vendido y la tasa de comisión y su respectivo constructor y los métodos setter y getter 6encapsulamiento7. #ara esta clase desarrolle los método abstractos heredados con las siguientes características y 5ue permita h siguiente4 alcular sus ingresos basados en montovendido8tasacomision. alcular su bonificación de la siguiente manera4 si el monto vendido es me 5ue 1222 no tendr* bonificación, si estas entre 1222 y 9222 ser* el 9: de ingresos, si supera los 9222 su bonificación ser* del 12: de sus ingresos. alcular su descuento de la siguiente manera4 si sus ingresos es menor a 1 su descuento ser* del 11: de sus ingresos sino ser* el 19: de sus ingresos alcular su sueldo neto como4 ingresos ; bonificaciones descuentos -uego construya otra clase hija de nombre EmpleadoPe!mae"e con los siguientes atributos4 sueldo base y afiliación 6+<# y =$#7 e incluya su constructor y los m setter y getter 6encapsulamiento7. #ara esta clase desarrolle los métodos abstra Pág. 1 de 11 GUÍA DE LABORATORIO N° 04 Escuela Profesional: Ingeniería de Sistemas. Asignatura: Prog. Orientada a Objetos Ciclo y Turno: Cuarto – Mañana-Tarde-Noche Semestre Académico: 2!"-I Docente: Ing. Marce#ino $strada %ro ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE

description

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. El tratamiento de excepciones permite manejar los errores generados en tempo de ejecución.

Transcript of GL-N° 04- POO

Universidad Continental

GUA DE LABORATORIO N 04Escuela Profesional: Ingeniera de Sistemas.Asignatura: Prog. Orientada a ObjetosCiclo y Turno: Cuarto Maana-Tarde-NocheSemestre Acadmico: 2015-IDocente: Ing. Marcelino Estrada Aro

Sesin 04: Polimorfismo y Tratamiento de excepciones

INTRODUCCIONEl 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. OBJETIVOS1. Codificar, compilar y ejecutar los ejercicios de aplicacin.

2. Conocer la estructura de un programa visual en Java.

II. EQUIPOS Y MATERIALESComputadora 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 SOFTWAREImplemente 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 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 SOLUCIONUtilice la paleta de componentes y construya el siguiente diseo:

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:

La clase hija EmpleadoVendedor tiene la siguiente informacin

La clase hija EmpleadoPermanente tiene la siguiente informacin

A continuacin complete lo siguientes cdigos en el Editor de Cdigo

METODOS PARA EL MANEJO DE EXCEPCIONES

Presione Shift+F6 y el aplicativo mostrar la siguiente ventana

EJERCICIO PROPUESTO1. 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:

Condicin de ContratoSUELDO BASE

Supervisin de ObrasSupervisin de Vas

Estable40006000

Contratado20004500

El sueldo base se calcula de la siguiente tabla

La bonificacin es un porcentaje de su sueldo base en base a su especialidad

Especialidad% de Bonificacin

Estructuras16%

Recursos Hdricos18%

Ingeniera Vial22%

tal y como se muestra en la siguiente tabla:

Numero de ObrasMonto

< 17300

>=18600

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 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:

Condicin de ContratoSUELDO BASE

Restauracin y RehabilitacinMateriales de ConstruccinPaisajismo y jardinera

Estable460075004860

Contratado398046004600

El sueldo base se da la siguiente tabla de acuerdo a la especialidad y condicin de contrato:

Cargo% de Bonificacin

Director de Obras25%

Edificador Industrial29%

La bonificacin que recibir est de acuerdo al cargo:

.

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 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 tablaCategoraSUELDO BASE

MAANATARDENOCHE

A1200 13001800

B140015002000

C160017002200

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

CategoraSueldo base

ContratadoEstableServicios no Personales

Secretaria200030001800

Asistente250039002200

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 PrimaLuego 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

CargoSUELDO BASE

ContabilidadTecnologas de InformacinPlanificacin

Gerente600080007000

Subgerente500070006000

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% de Prima

Gerente23%

Subgerente17%

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

CargoMonto

Gerente700

Subgerente400

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.ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

Pg. 1 de 11