RA7 - CEg¶
Empaquetar actividades
Empaqueta las actividades, dentro de la carpeta ut08, en la carpeta actividades/ce7g.
Actividad 14¶
paquete: A14_facultad
Realizar una aplicación para la gestión de la información de las personas vinculadas a una Facultad, que se pueden clasificar en tres tipos: estudiantes, profesores y personal de servicio.
A continuación, se detalla qué tipo de información debe gestionar esta aplicación:
- Por cada
Persona, se debe conocer, al menos, su nombre y apellidos, su número de identificación y su estado civil. - Con respecto a los
Empleados, sean del tipo que sean, hay que saber su año de incorporación a la facultad y qué número de despacho tienen asignado. - En cuanto a los
Estudiantes, se requiere almacenar el curso en el que están matriculados. - Por lo que se refiere a los
Profesores, es necesario gestionar a qué departamento pertenecen (lenguajes, matemáticas, arquitectura, ...). - Sobre el
Personal de servicio, hay que conocer a qué sección están asignados (biblioteca, decanato, secretaría, ...).
El Actividad consiste, en primer lugar, en definir la jerarquía de clases de esta aplicación. A continuación, debe programar las clases definidas en las que, además de los constructores, hay que desarrollar los métodos correspondientes a las siguientes acciones:
- Cambio del estado civil de una persona.
- Reasignación de despacho a un empleado.
- Matriculación de un estudiante en un nuevo curso.
- Cambio de departamento de un profesor.
- Traslado de sección de un empleado del personal de servicio.
- Imprimir toda la información de cada tipo de individuo.
En el método main crear un array de personas. Crear diferentes instancias de las subclases e insertarlas en el array. Probar los diferentes métodos desarrollados.
Actividad 15¶
paquete: A15_banco
Vamos a hacer una aplicación que simule el funcionamiento de un banco.
Crea una clase CuentaBancaria con los atributos: iban y saldo. Implementa métodos para:
- Consultar los atributos.
- Ingresar dinero.
- Retirar dinero.
- Traspasar dinero de una cuenta a otra.
Para los tres últimos métodos puede utilizarse internamente un método privado más general llamado añadir(...) que añada una cantidad (positiva o negativa) al saldo.
También habrá un atributo común a todas las instancias llamado interesAnualBasico, que en principio puede ser constante.
La clase tiene que ser abstracta y debe tener un método calcularIntereses() que se dejará sin implementar.
También puede ser útil implementar un método para mostrar los datos de la cuenta.
De esta clase heredarán dos subclases: CuentaCorriente y CuentaAhorro. La diferencia entre ambas será la manera de calcular los intereses:
- A la primera se le incrementará el saldo teniendo en cuenta el interés anual básico.
- La segunda tendrá una constante de clase llamada saldoMinimo. Si no se llega a este saldo el interés será la mitad del interés básico. Si se supera el saldo mínimo el interés aplicado será el doble del interés anual básico.
Implementa una clase principal con función main para probar el funcionamiento de las tres clases: Crea varias cuentas bancarias de distintos tipos, pueden estar en un ArrayList si lo deseas; prueba a realizar ingresos, retiradas y transferencias; calcula los intereses y muéstralos por pantalla; etc.
El diagrama UML sería:

Actividad 16¶
Sistema de Gestión de Inventario
- Crear una jerarquía de clases para un sistema de inventario:
- Superclase
Productocon atributosnombre,precioycantidad. - Subclases
ProductoPerecederoyProductoNoPerecedero.ProductoPerecederotendrá un atributofechaCaducidad, mientras queProductoNoPerecederotendrá un atributogarantiaen meses. - Crear una clase
Inventarioque gestione una lista de productos y permita realizar las siguientes operaciones: - Añadir productos.
- Buscar productos por nombre.
- Imprimir el detalle del inventario.
- Implementar una clase
TestInventariopara probar todas las operaciones.