Домашняя работа №1 по предмету "Программирование на Java".
Перечисление, представляющее различные языки программирования, которые могут использоваться разработчиками.
Перечисление, представляющее русские имена для сотрудников.
Класс Employee является абстрактным классом, представляющим общие характеристики всех сотрудников компании. Он включает следующие поля и методы:
name: Имя сотрудника.
position: Должность сотрудника.
employeeId: Уникальный идентификатор сотрудника.
yearsOfService: Стаж работы сотрудника.
salary: Зарплата сотрудника.
getSalary(): Возвращает зарплату сотрудника.
introduce(): Выводит информацию о сотруднике, включая его имя, идентификатор, должность, стаж и зарплату.
getName(): Возвращает имя сотрудника.
getEmployeeId(): Возвращает ID сотрудника
Этот класс служит в качестве базового класса для конкретных видов сотрудников, таких как разработчики и менеджеры.
Класс Developer наследует от класса Employee и представляет собой сотрудника, занимающего должность разработчика. Класс включает следующее дополнительное поле:
programmingLanguage: Язык программирования, на котором работает разработчик.
work(): Выводит информацию о работе разработчика, включая язык программирования, на котором он разрабатывает программное обеспечение.
Класс Developer предоставляет информацию о работе и специализации сотрудника, в данном случае, разработчика.
Класс Manager также наследует от класса Employee и представляет сотрудника, занимающего должность менеджера. Класс включает следующее дополнительное поле:
department: Отдел, в котором работает менеджер.
work(): Выводит информацию о работе менеджера, включая отдел, который он управляет.
Класс Manager предоставляет информацию о работе менеджера и его области ответственности в компании.
Класс Company представляет собой программу, которая позволяет генерировать данные для сотрудников компании, выводить информацию о каждом сотруднике и определять сотрудников с самой высокой и самой низкой зарплатой.
generateEmployeeData(int numberOfEmployees): Этот метод генерирует данные для сотрудников компании. Он принимает аргумент numberOfEmployees, который указывает количество сотрудников, которых необходимо создать. Метод использует случайные данные, такие как имена, идентификаторы, стаж, зарплату и язык программирования (для разработчиков) для создания массива сотрудников.
main(String[] args): Этот метод является точкой входа в программу. Он взаимодействует с пользователем, запрашивая количество сотрудников, которых нужно создать, а затем использует метод generateEmployeeData для создания сотрудников. После этого он выводит информацию о каждом сотруднике, включая его данные (имя, идентификатор, должность, стаж, зарплата) и роль (разработчик или менеджер). Также метод определяет сотрудника с самой высокой и самой низкой зарплатой и выводит их имена и зарплаты.
Employee: Абстрактный класс, представляющий общие характеристики всех сотрудников.
Developer: Класс, наследующий Employee, представляющий разработчика. Содержит информацию о языке программирования, на котором работает разработчик.
Manager: Класс, наследующий Employee, представляющий менеджера. Содержит информацию о департаменте, которым управляет менеджер.
ProgrammingLanguage: Перечисление, представляющее различные языки программирования.
Names: Перечисление, представляющее имена сотрудников.
Для использования класса Company следует запустить метод main. Пользователю будет предложено ввести количество сотрудников, которых необходимо создать. После этого программа сгенерирует данные для каждого сотрудника и выведет информацию о них, включая имена, идентификаторы, должности, стаж, зарплаты и роли (разработчик или менеджер). Также программа определит сотрудника с самой высокой и самой низкой зарплатой и выведет их имена и зарплаты.