Giter Site home page Giter Site logo

empresaprogramadores's Introduction

Enunciado: Empresa de Programadores y Gerentes

En este ejercicio, se te proporciona un programa principal llamado MainEmpresa que interactúa con una clase llamada Empresa. Tu tarea es crear e implementar las siguientes clases: Empleado (abstracta), Gerente, Programador, ParametroInvalidoException y TipoEmpleado (enum). A continuación, se detalla cada una de las clases:

Empresa (viene medio hecha para que os hagáis a la idea):

  • La cosa sería implementar un Map, ya sea un HashMap para buscar rápido, o un TreeMap para tenerlos más ordenados.

Empleado (abstracta):

  • Atributos:

    • dniEmpleado (String): el dni del empleado.
    • nombre (String): el nombre del empleado.
    • sueldo (double): el sueldo del empleado.
  • Métodos:

    • Constructor: recibe el nombre y el sueldo del empleado.
    • getNombre(): devuelve el nombre del empleado.
    • getSueldo(): devuelve el sueldo del empleado.
    • toString(): devuelve una representación en cadena de caracteres del empleado.

Gerente (subclase de Empleado):

  • Atributos:

    • departamento (String): el departamento del gerente.
  • Métodos:

    • Constructor: recibe el nombre, el sueldo y el departamento del gerente.
    • getDepartamento(): devuelve el departamento del gerente.
    • toString(): devuelve una representación en cadena de caracteres del gerente.

Programador (subclase de Empleado):

  • Atributos:

    • esJunior (boolean): indica si el programador es junior(true) o senior(false).
  • Métodos:

    • Constructor: recibe el nombre, el sueldo, el lenguaje de programación y el estado del plus de idioma del programador.
    • getLenguaje(): devuelve el lenguaje de programación del programador.
    • esJunior(): devuelve true si el programador recibe un plus de idioma, false en caso contrario(no sé si es necesario).
    • toString(): devuelve una representación en cadena de caracteres del programador.

ParametroInvalidoException (clase de excepción):

  • Hereda de la clase Exception.
  • Constructor: recibe un mensaje de error como parámetro.

TipoEmpleado (enum):

  • Enumerados:
    • GERENTE: representa el tipo de empleado gerente.
    • PROGRAMADOR: representa el tipo de empleado programador.

Implementa las clases mencionadas anteriormente con sus respectivos atributos y métodos según las especificaciones proporcionadas.

Una vez implementadas las clases, intégralas en el programa MainEmpresaProgramadores proporcionado. Asegúrate de completar las partes indicadas con // TODO en el código.

El programa debe realizar las siguientes acciones:

  • Imprimir todos los empleados.
  • Imprimir solo los programadores.
  • Imprimir los empleados por sueldo de mayor a menor.
  • Imprimir los empleados por nombre en orden alfabético.
  • Cargar datos de empleados desde un archivo CSV.
  • Guardar los datos de empleados en un archivo CSV.
  • Salir del programa.

Realiza la acción correspondiente según la opción seleccionada por el usuario. Recuerda manejar las excepciones apropiadas y validar los datos ingresados por el usuario.

empresaprogramadores's People

Contributors

ianharrisonromero avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.