[Skillbox] Java-разработчик - модуль 14 - Абстрактные классы и интерфейсы - Практическая работа 14.9 - Company - (2023 год обучения).
Цель!
Научиться работать с интерфейсами, абстрактными классами и взаимодействием классов.
Выполните задание в репозитории java_basics в проекте AbstractClasses/practice_1. Директория пустая, вам необходимо в ней создать новый проект и выполнить задание.
1. Создайте класс компании Company, содержащей сотрудников и реализующей методы:
Каждый метод НЕ должен иметь модификатор static, это позволит каждому объекту класса Company иметь свой набора сотрудников, свой расчет дохода, увольнение и найм. Аргументы и возвращаемое значение методов выберите на основании логики работы вашего приложения.
2. Создайте два метода, возвращающие список указанной длины (count). Они должны содержать сотрудников, отсортированных по убыванию и возрастанию заработной платы:
3. Создайте классы сотрудников с информацией о зарплатах и условиями начисления зарплаты:
Каждый класс сотрудника должен имплементировать интерфейс Employee. В интерфейсе Employee должен быть объявлен метод, возвращающий зарплату сотрудника, — getMonthSalary().
Аргументы и возвращаемое значение метода выберите в соответствии с логикой начисления зарплат. В интерфейсе объявите необходимые методы.
Для демонстрации и тестирования работы ваших классов:
Примеры вывода списка зарплат
Список из пяти зарплат по убыванию: