Java
Ejercicios
Ejercicios
  • 02-Estructuras de control y bucles
    • Ejercicios de estructuras de control
    • Ejercicios de estructuras de control II
  • 06-Patrones de diseño
    • Ejercicio MVC en JAVA
  • 08-Flujos y Ficheros
    • Ejercicio de Redirección y Comunicación entre Procesos en Java
    • Ejercicio de Comunicación y Sincronización entre Tres Procesos en Java
  • 08-Flujos y Ficheros
  • 10-Swing
    • Ejercicio Aplicación de Notas Simples
    • Ejercicio Cálculadora básica
    • Ejercicio: Aplicación de Lista de Tareas con layouts
    • Ejercicio: Dibujo de figuras con Graphics
    • Ejercicio: Aplicación de Control de Color de un Rectángulo
    • Ejercicio: Dibujo de una clase vista
  • 03-Arrays y colecciones
    • 03.01-Arrays
      • Sistema de Gestión de Cine
      • Ejercicios básicos de arrays
    • 03.02-Colecciones
      • Sistema de Gestión de Canales de YouTube
  • 05-POO
    • 05.1-POO Iniciación
      • Ejercicio: Sistema de Gestión para una Biblioteca
      • Ejercicio de arrays. Aventura de los Patapons
      • Ejercicios básicos sobre POO
    • 05.2-POO Clases Abstractas
      • Sistema de Gestión de Vehículos
    • 05.6-Generales de POO
      • Ejercicio: Sistema de Gestión de Empleados
      • Aventuras en el Laberinto Encantado
      • Ejercicio de Pasapalabra
  • Soluciones
    • 02-Estructuras de control y bucles
      • [Solución] Ejercicios de estructuras de control II
    • 06-Patrones de diseño
      • [Solucion] Ejercicio MVC en JAVA
    • 08-Flujos y Ficheros
      • Solución de Ejercicio de Redirección y Comunicación entre Procesos en Java
      • Solución de Ejercicio de Comunicación y Sincronización entre Tres Procesos en Java
    • 10-Swing
      • [Solución] Ejercicio Aplicación de Notas Simples
      • [Solución] Ejercicio Cálculadora Simple
      • [Solución] Ejercicio: Aplicación de Lista de Tareas con layouts
      • [Solución] Ejercicio: Dibujo de figuras con Graphics
      • [Solución] Ejercicio: Dibujo de figuras con Graphics
      • [Solución] Ejercicio: Aplicación de Control de Color de un Rectángulo
    • 03-Arrays y colecciones
      • 03.01-Arrays
        • [Solución] Ejercicios de estructuras de control 2
        • [Solución] Sistema de Gestión de Cine
        • [Solución] Ejercicios básicos de arrays
      • 03.02-Colecciones
        • [Solución] Sistema de Gestión de Canales de YouTube
    • 05-POO
      • 05.1-POO Iniciación
        • [Solución] Ejercicio de arrays. Aventura de los Patapons
        • [Solución] Ejercicios básicos sobre POO
      • 05.2-POO Clases Abstractas
        • [Solución] Sistema de Gestión de Vehículos
      • 05.6-Generales de POO
        • Solución de Sistema de Gestión de Empleados
        • [Solución] Aventuras en el Laberinto Encantado
        • [Solución] Ejercicio de Pasapalabra
Powered by GitBook
On this page
  • Clase Empleado
  • Interface Bonificable
  • Clase Gerente
  • Clase Empresa
  • Ejemplo de uso
  1. 05-POO
  2. 05.6-Generales de POO

Ejercicio: Sistema de Gestión de Empleados

Objetivo Desarrollar un sistema para gestionar diferentes tipos de empleados en una empresa. La empresa tiene empleados regulares y gerentes. Todos los empleados tienen un salario base, pero los gerentes también tienen un bono anual basado en el rendimiento.

Clase Empleado

  • Atributos: nombre (String), ID (int), salarioBase (double).

  • Constructor para establecer todos los atributos.

  • Métodos:

    • calcularSalario(): Devuelve el salarioBase.

    • mostrarDetalles(): Imprime los detalles del empleado.

Interface Bonificable

  • Método calcularBono(): Cualquier clase que implemente Bonificable deberá proporcionar una implementación para calcular un bono.

Clase Gerente

  • Extiende Empleado e implementa Bonificable.

  • Atributos adicionales: bonoAnual (double).

  • Constructor para establecer todos los atributos (incluyendo los de Empleado).

  • Sobreescribe calcularSalario() para incluir bonoAnual.

  • Implementa calcularBono() para calcular el bono anual basado en un porcentaje del salarioBase.

  • Sobreescribe mostrarDetalles() para incluir detalles sobre el bono anual.

Clase Empresa

  • Atributos: lista de empleados (ArrayList de Empleado).

  • Métodos:

    • añadirEmpleado(Empleado empleado): Añade un nuevo empleado a la lista.

    • mostrarEmpleados(): Imprime los detalles de todos los empleados.

Ejemplo de uso

public class Main {
    public static void main(String[] args) {
        Empresa empresa = new Empresa();

        Empleado empleado1 = new Empleado("Juan", 1, 30000);
        Gerente gerente1 = new Gerente("Ana", 2, 50000, 10000);

        empresa.añadirEmpleado(empleado1);
        empresa.añadirEmpleado(gerente1);

        empresa.mostrarEmpleados();
    }
}
Previous05.6-Generales de POONextAventuras en el Laberinto Encantado

Last updated 1 year ago