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

ESCUELA ACADEMICO

PROFESIONAL DE INGENIERIA DE
SISTEMAS
GUA
Sesin 03: Clases DE LABORATORIO
Abstractas N 03
y Encapsulamiento
Escuela Profesional: Ingeniera de Sistemas. Asignatura: Prog. Orientada a Objetos
Ciclo y Turno: Cuarto Maana-Tarde-Noche Semestre Acadmico: 2012-1
Docente: Ing. Marcelino Estrada Aro Fecha:
INTRODUCCION
Una de las caractersticas ms tiles de cualquier lenguaje orientado a objetos es la
posibilidad de declarar clases que definen como se utiliza solamente, sin tener que
implementar mtodo. Esto en Java se hace mediante interfaces y con clases abstractas.
Una clase abstracta es una clase de la que no se puede crear objetos. La utilidad de estas
clases estriba en que otras clases hereden de sta, por lo que con ello conseguiremos
reutilizar cdigo. Para declarar una clase como abstracta utilizamos la palabra clave
abstract.

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-03.

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 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 neto 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.

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

Pg. 1 de 9
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.

Considere los objetos necesarios para utilizar la funcionalidad de la clase


SOLUCION
Utilice 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

Pg. 2 de 9
Del enunciado la clase Empleado tiene la siguiente informacin:

Pg. 3 de 9
La clase hija EmpleadoVendedor tiene la siguiente informacin

Pg. 4 de 9
La clase hija EmpleadoPermanente tiene la siguiente informacin

A continuacin complete lo siguientes cdigos en el Editor de Cdigo

Pg. 5 de 9
Pg. 6 de 9
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 SUELDO BASE


siguiente tabla Condicin
Supervisin Supervisin de
de Contrato
de Obras Vas
Estable 4000 6000
La bonificacin es un porcentaje de Contratado 2000 4500
su sueldo base en base a su
especialidad

Pg. 7 de 9
Especialidad % de Bonificacin
Estructuras 16%
tal y como se muestra en la siguiente Recursos Hdricos 18%
tabla:
Ingeniera Vial 22%

Los descuentos se aplica de acuerdo a las constantes


Numero de
establecidas en la interface Monto
Obras
Esta clase tendr un mtodo propio que asignara un
< 17 300
monto de movilidad de acuerdo al nmero de obras
asignadas >=18 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 da SUELDO BASE


la siguiente tabla de Condicin Restauracin Paisajismo
acuerdo a la Materiales de
de Contrato y y jardinera
especialidad y Construccin
Rehabilitacin
condicin de Estable 4600 7500 4860
contrato: Contratado 3980 4600 4600

La bonificacin que recibir est de


acuerdo al cargo: Cargo % de Bonificacin
Director de Obras 25%
Edificador Industrial 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.

Pg. 8 de 9
2. Construya una clase abstracta de nombre Asistente que tiene los siguientes atributos: cdigo,
apellidos, nombres, especialidad (Recursos Humanos o Comportamiento Organizacional)
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
Asistente.

Luego construya la Clase Asistente de Gerencia de la clase Asistente que tiene los siguientes
atributos: categora (A o B) 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 Asistente
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 SUELDO BASE


tabla Categora Recursos Comportamiento
Humanos Organizacional
A 6000 8000
B 5000 7000
La bonificacin ser de 600 soles cualquiera que sea su categora.
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 cargo

Categora Monto
A 700
B 400
Otro mtodo propio que permita generar un cdigo con la siguiente caracterstica: AGE00001,
AGE00002

Luego construya una subclase Asistente de PostGrado de la clase Asistente que tendr los
atributos como: Estudios de Postgrado (Maestra o Doctorado) y contador con atributo esttico.
Construya su constructor que actualizar los datos de las clase padre as como actualizara el
atributo cdigo, heredado de la Clase Persona con un cdigo autogenerado y sus mtodos
getter y setter. Para esta clase desarrolle los mtodos abstractos heredados y que permitan
hacer lo siguiente:
Estudios de Postgrado Monto
El sueldo base se da la siguiente tabla Maestra 2700
Doctorado 4400

La bonificacin que recibir esta en funcin al 10% de su sueldo base.


El Asistente de Postgrado no recibe descuento por AFP mas si por Essalud
Tendr su mtodo propio que permita generar un cdigo con la siguiente caracterstica:
APOS0001, APOS0002

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.

Pg. 9 de 9