🎓 Proyecto Académico: Desarrollado para la Prueba Evaluativa RA7 del módulo de Programación Orientada a Objetos (MP0485) en el centro STUCOM Pelai (Barcelona), 1º de Desarrollo de Aplicaciones Web (DAW).
Aplicación de consola en Java que simula el funcionamiento interno de un concesionario de vehículos. El proyecto modela de manera integral la jerarquía laboral de los empleados, el cálculo automatizado de nóminas según pluses y comisiones, y la asignación polimórfica de tareas a través de interfaces y clases abstractas.
ConcesionarioCoches/
├── Controller/
│ └── Main.java # Punto de entrada interactivo y menú por consola
└── Model/
├── Trabajo.java # Interfaz para contratos laborales
├── Empleado.java # Clase abstracta base de empleados
├── Vendedor.java # Empleado comercial con comisión por ventas
├── Mecanico.java # Empleado de taller con cobro de horas extra
├── Gerente.java # Empleado de dirección con bonus por supervisión
└── Concesionario.java # Gestión global del equipo y nóminas
classDiagram
class Trabajo {
<<interface>>
+trabajar() void
+calcularSueldo() double
}
class Empleado {
<<abstract>>
#String nombre
#double sueldoBase
#int horasTrabajo
+getNombre() String
+getSueldoBase() double
+calcularSueldo()* double
}
Trabajo <|.. Empleado : implements
Empleado <|-- Vendedor : extends
Empleado <|-- Mecanico : extends
Empleado <|-- Gerente : extends
class Vendedor {
-int ventasRealizadas
-double comisionPorVenta
+trabajar() void
+calcularSueldo() double
}
class Mecanico {
-int horasExtra
-double pagoHoraExtra
+trabajar() void
+calcularSueldo() double
}
class Gerente {
-double bonus
+trabajar() void
+calcularSueldo() double
}
- Sueldo base:
1200 € - Atributos:
ventasRealizadasycomisionPorVenta(50 €por venta). - Cálculo de nómina:
sueldoBase + (ventasRealizadas * comisionPorVenta) - Acción: Atiende clientes y gestiona el catálogo de vehículos.
- Sueldo base:
1200 € - Atributos:
horasExtraypagoHoraExtra(15 €/hora). - Cálculo de nómina:
sueldoBase + (horasExtra * pagoHoraExtra) - Acción: Revisa mecánicas, mantenimiento y reparación de coches.
- Sueldo base:
2000 € - Atributos:
bonus(500 €). - Cálculo de nómina:
sueldoBase + bonus - Acción: Supervisión directiva y coordinación del equipo.
Al arrancar la aplicación en la consola o NetBeans IDE:
- Se solicita el nombre del concesionario.
- Se solicita dar de alta a los empleados indicando el tipo (
1: Vendedor,2: Mecánico,3: Gerente) y su nombre. - Es posible registrar tantos empleados como se desee.
- Tras finalizar el alta, se ejecuta la jornada laboral de todo el equipo de forma polimórfica y se genera el resumen de nóminas.
Introduce el nombre del concesionario: Concesionario AutoPlus
Creación de empleados...
Empleado 1: Tipo (1. Vendedor, 2. Mecánico, 3. Gerente)
Nombre: Juan Pérez
Vendedor creado correctamente.
¡A trabajar!
🚗 Vendedor Juan Pérez → El vendedor está atendiendo a clientes y mostrando los coches.
🔧 Mecánico Pedro → El mecánico está revisando y reparando los coches.
👔 Gerente Laura → El gerente está supervisando el concesionario y coordinando al equipo.
💰 Resumen de sueldos:
Vendedores: 1550.00 €
Mecánicos: 1350.00 €
Gerentes: 2500.00 €
Total de sueldos: 5400.00 €
- Lenguaje: Java 17+
- Paradigma: Programación Orientada a Objetos (Herencia, Polimorfismo, Interfaces, Abstracción)
- Entorno: NetBeans IDE / Apache Maven
Ignacio Breñas Muñoz — 1º DAW, STUCOM Pelai