0% encontró este documento útil (0 votos)
8 vistas

Clases Java

El documento presenta un sistema de gestión de empleados en Java, que incluye clases para Departamentos, Empleados y Reportes de Desempeño. Cada Departamento puede tener múltiples Empleados, y cada Empleado puede tener varios Reportes de Desempeño asociados. La clase principal realiza una prueba creando un Departamento y un Empleado, y genera un Reporte de Desempeño para mostrar información sobre el empleado.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
8 vistas

Clases Java

El documento presenta un sistema de gestión de empleados en Java, que incluye clases para Departamentos, Empleados y Reportes de Desempeño. Cada Departamento puede tener múltiples Empleados, y cada Empleado puede tener varios Reportes de Desempeño asociados. La clase principal realiza una prueba creando un Departamento y un Empleado, y genera un Reporte de Desempeño para mostrar información sobre el empleado.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

import java.util.

ArrayList;
import java.util.List;
import java.util.Date;

// Clase Departamento
class Departamento {
private String nombre;
private int id;
private List<Empleado> empleados;

public Departamento(String nombre, int id) {


this.nombre = nombre;
this.id = id;
this.empleados = new ArrayList<>();
}

public void agregarEmpleado(Empleado empleado) {


empleados.add(empleado);
}

public List<Empleado> getEmpleados() {


return empleados;
}

public String getNombre() {


return nombre;
}

public int getId() {


return id;
}
}

// Clase Empleado
class Empleado {
private String nombre;
private String idDocumento;
private double salario;
private String rol;
private Departamento departamento;
private List<ReporteDesempeño> reportes;

public Empleado(String nombre, String idDocumento, double salario, String rol,


Departamento departamento) {
this.nombre = nombre;
this.idDocumento = idDocumento;
this.salario = salario;
this.rol = rol;
this.departamento = departamento;
this.reportes = new ArrayList<>();
departamento.agregarEmpleado(this);
}

public void agregarReporte(ReporteDesempeño reporte) {


reportes.add(reporte);
}

public List<ReporteDesempeño> getReportes() {


return reportes;
}

public String getNombre() {


return nombre;
}

public String getIdDocumento() {


return idDocumento;
}

public double getSalario() {


return salario;
}

public String getRol() {


return rol;
}

public Departamento getDepartamento() {


return departamento;
}
}

// Clase ReporteDesempeño
class ReporteDesempeño {
private Empleado empleado;
private Date fechaEvaluacion;
private double calificacion;
private String observaciones;

public ReporteDesempeño(Empleado empleado, Date fechaEvaluacion, double


calificacion, String observaciones) {
this.empleado = empleado;
this.fechaEvaluacion = fechaEvaluacion;
this.calificacion = calificacion;
this.observaciones = observaciones;
empleado.agregarReporte(this);
}

public Empleado getEmpleado() {


return empleado;
}

public Date getFechaEvaluacion() {


return fechaEvaluacion;
}

public double getCalificacion() {


return calificacion;
}

public String getObservaciones() {


return observaciones;
}
}

// Clase principal para pruebas


public class GestionEmpleados {
public static void main(String[] args) {
Departamento dptoTI = new Departamento("Tecnología", 1);
Empleado empleado1 = new Empleado("Carlos Pérez", "1012345678", 5000000,
"Desarrollador", dptoTI);

ReporteDesempeño reporte1 = new ReporteDesempeño(empleado1, new Date(),


4.5, "Buen desempeño en proyectos de software.");

System.out.println("Empleado: " + empleado1.getNombre());


System.out.println("Departamento: " +
empleado1.getDepartamento().getNombre());
System.out.println("Última evaluación: " +
empleado1.getReportes().get(0).getCalificacion());
}
}

También podría gustarte