[Skillbox] Java-разработчик - модуль 14 - Абстрактные классы и интерфейсы - Практическая работа 14.9 - Company

Раздел
Программирование
Предмет
Просмотров
270
Покупок
0
Антиплагиат
Не указан
Размещена
4 Ноя 2023 в 18:44
ВУЗ
Skillbox
Курс
1 курс
Стоимость
500 ₽
Демо-файлы   
1
png
1655992073836 1655992073836
255.9 Кбайт 255.9 Кбайт
Файлы работы   
1
Каждая работа проверяется на плагиат, на момент публикации уникальность составляет не менее 40% по системе проверки eTXT.
zip
[Skillbox] Java-разработчик - модуль 14 - Абстрактные классы и интерфейсы - Практическая работа 14.9
15.6 Кбайт 500 ₽
Описание

[Skillbox] Java-разработчик - модуль 14 - Абстрактные классы и интерфейсы - Практическая работа 14.9 - Company - (2023 год обучения).

Цель!

Научиться работать с интерфейсами, абстрактными классами и взаимодействием классов.

Что нужно сделать

Выполните задание в репозитории java_basics в проекте AbstractClasses/practice_1. Директория пустая, вам необходимо в ней создать новый проект и выполнить задание.

Оглавление

1. Создайте класс компании Company, содержащей сотрудников и реализующей методы:

  • найм одного сотрудника — hire(Employee employee),
  • найм списка сотрудников – hireAll(Collection<Employee> employes),
  • увольнение сотрудника – fire(Employee employee),
  • получение значения дохода компании – getIncome().

Каждый метод НЕ должен иметь модификатор static, это позволит каждому объекту класса Company иметь свой набора сотрудников, свой расчет дохода, увольнение и найм. Аргументы и возвращаемое значение методов выберите на основании логики работы вашего приложения.


2. Создайте два метода, возвращающие список указанной длины (count). Они должны содержать сотрудников, отсортированных по убыванию и возрастанию заработной платы:

  • List<Employee> getTopSalaryStaff(int count),
  • List<Employee> getLowestSalaryStaff(int count).


3. Создайте классы сотрудников с информацией о зарплатах и условиями начисления зарплаты:

  • Manager — зарплата складывается из фиксированной части и бонуса в виде 5% от заработанных для компании денег. Количество заработанных денег для компании генерируйте случайным образом от 115 000 до 140 000 рублей.
  • TopManager — зарплата складывается из фиксированной части и бонуса в виде 150% от заработной платы, если доход компании более 10 млн рублей.
  • Operator — зарплата складывается только из фиксированной части.

Каждый класс сотрудника должен имплементировать интерфейс Employee. В интерфейсе Employee должен быть объявлен метод, возвращающий зарплату сотрудника, — getMonthSalary().

Аргументы и возвращаемое значение метода выберите в соответствии с логикой начисления зарплат. В интерфейсе объявите необходимые методы.


Для демонстрации и тестирования работы ваших классов:

  1. Создайте и наймите в компанию: 180 операторов Operator, 80 менеджеров по продажам Manager, 10 топ-менеджеров TopManager.
  2. Распечатайте список из 10–15 самых высоких зарплат в компании.
  3. Распечатайте список из 30 самых низких зарплат в компании.
  4. Увольте 50% сотрудников.
  5. Распечатайте список из 10–15 самых высоких зарплат в компании.
  6. Распечатайте список из 30 самых низких зарплат в компании.


Примеры вывода списка зарплат

Список из пяти зарплат по убыванию:

  • 230 000 руб.
  • 178 000 руб.
  • 165 870 руб.
  • 123 000 руб.
  • 117 900 руб.
Вам подходит эта работа?
Похожие работы
Java
Задача Задача
13 Дек в 22:03
19 +3
0 покупок
Java
Задача Задача
2 Окт в 16:04
48 +1
0 покупок
Java
Задача Задача
13 Июл в 14:32
92 +1
0 покупок
Другие работы автора
Цифровая обработка сигнала
Тест Тест
1 Ноя в 20:15
71 +5
0 покупок
Правовая статистика
Тест Тест
24 Окт в 23:25
58 +1
0 покупок
Обучение нейронных систем
Тест Тест
24 Окт в 21:31
60
1 покупка
Гражданский процесс
Тест Тест
24 Окт в 14:17
116
0 покупок
Английский язык
Тест Тест
12 Фев в 20:44
620 +5
12 покупок
Русский язык и культура речи
Тест Тест
31 Янв в 21:02
405 +1
1 покупка
Литература
Тест Тест
31 Янв в 20:51
486 +1
7 покупок
Высшая математика
Тест Тест
31 Янв в 20:34
440 +3
3 покупки
Безопасность жизнедеятельности
Тест Тест
31 Янв в 19:53
829 +5
26 покупок
География
Тест Тест
23 Янв в 02:20
293 +3
8 покупок
Биология
Тест Тест
23 Янв в 02:00
267 +1
2 покупки
Физкультура и спорт
Тест Тест
23 Янв в 01:43
522 +2
2 покупки
Высшая математика
Тест Тест
8 Янв в 22:04
2 072 +9
83 покупки
Правоведение
Тест Тест
8 Янв в 21:34
966
35 покупок
Математическая статистика
Тест Тест
6 Янв в 00:26
349 +4
7 покупок
Физкультура и спорт
Тест Тест
5 Янв в 14:25
500 +3
2 покупки
Русский язык и культура речи
Тест Тест
3 Янв в 17:17
932 +6
28 покупок
Темы журнала
Показать ещё
Прямой эфир