[Skillbox] Java-разработчик - модуль 13 - Наследование. 2023 год.

Цена:
850 руб.

Состав работы

material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon Company,.png
material.view.file_icon Client.png
material.view.file_icon BankAccount.png
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
  • Программа для просмотра изображений

Описание

[Skillbox] Java-разработчик - модуль 13 - Наследование. 2023 год.

Задача 1 - BankAccount

Задача 2 - BankAccount(модификаторы доступа).

Задача 3 - Client

Задача 4 - Company

Дополнительная информация

Задача №1
Цель

Освоить на практике наследование классов.

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

Выполните задание в директории master/src/main/java/practice.

В проекте найдите класс BankAccount и унаследованные от него классы CardAccount и DepositAccount.
Реализуйте методы классов, при необходимости переопределите методы в наследниках так, чтобы выполнялись условия пополнения и снятия:
BankAccount — пополнение и списание происходит без комиссии. Если передать в метод пополнения отрицательное значение, сумма на счёте не должна измениться. При попытке снять большую сумму, чем есть на счёте, сумма не списывается со счёта, сумма на счёте не изменяется.
CardAccount — карточный счёт, в дополнение к условиям BankAccount — при снятии денег должна взиматься комиссия 1% от суммы списания. Пример: при попытке снять со счёта 100 рублей должен списаться 101 рубль.
DepositAccount — депозитный расчётный счёт, в дополнение к условиям BankAccount — нельзя снимать деньги в течение одного месяца после последнего пополнения. Переменную, в которой хранится дата последнего внесения, назовите lastIncome. Тип переменной используйте Calendar или LocalDate.


Запустите в проекте тесты и убедитесь в том, что они выполняются успешно. Если тесты не выполняются и выдают информацию об ошибках, постарайтесь самостоятельно исправить эти недочёты и добиться успешного выполнения тестов перед отправкой результатов куратору.


Задача №2
Цель

Научиться выбирать подходящие модификаторы доступа.

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

Используйте код предыдущего задания. Установите в коде проекта подходящие модификаторы доступа у методов и переменных классов BankAccount, CardAccount и DepositAccount.

Критерии оценки работы

Принято:

для всех переменных и методов установлены подходящие модификаторы доступа.
На доработку:

задание не выполнено


Задача № 3
Цель
Освоить работу с наследованием, используя абстрактный класс.

Что нужно сделать
Выполните задание в директории src/main/java/practice


В проекте найдите абстрактный класс Client и его наследников IndividualBusinessman, LegalPerson и PhysicalPerson.
Реализуйте методы классов, при необходимости переопределите методы в наследниках так, чтобы выполнялись условия пополнения и снятия:
У каждого клиента есть сумма денег на счету (число). Деньги можно положить на счёт, снять и вернуть остаток на счёте. Каждый класс должен содержать метод, который выводит информацию в консоль о счёте: условие пополнения, условие снятия и баланс.

У PhysicalPerson пополнение и списание происходит без комиссии. Если передать в метод пополнения отрицательное значение, сумма на счёте не должна измениться. При попытке снять сумму больше, чем есть на счете, сумма не списывается со счёта, сумма на счёте не изменяется.
У LegalPerson — все условия PhysicalPerson и дополнительно снятие с комиссией 1%.
У IndividualBusinessman — все условия PhysicalPerson и дополнительно, пополнение с комиссией 1%, если сумма меньше 1 000 рублей. И пополнение с комиссией 0,5%, если сумма больше либо равна 1 000 рублей.


Задача № 4
Цель

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

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

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

найм одного сотрудника — hire(),
найм списка сотрудников – hireAll(),
увольнение сотрудника – fire(),
получение значения дохода компании – getIncome().
Аргументы и возвращаемое значение методов выберите на основании логики работы вашего приложения.

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()
Аргументы и возвращаемое значение метода выберите в соответствии с логикой начисления зарплат. В интерфейсе при необходимости объявляйте необходимые методы.



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

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


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

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

230 000 руб.
178 000 руб.
165 870 руб.
123 000 руб.
117 900 руб.

Рекомендации

Сделайте возможным создавать разные экземпляры компании со своим списком сотрудников и доходом.
Чтобы получить данные компании внутри класса сотрудника, настройте хранение ссылки на Company и передавайте объект Company с помощью конструктора или сеттера.
Учтите, в методы получения списков зарплат могут передаваться значения count, превышающие количество сотрудников в компании, или отрицательные.
[Skillbox] Java-разработчик - модуль 10 - массивы и коллекции. 2023 год.
[Skillbox] Java-разработчик - модуль 10 - массивы и коллекции. 2023 год. Задача 1 - ReverseArray Задача 2 - Hospital Задача 3 - TwoDimensionalArray Задача 4 - TodoList Задача 5 - EmailList Задача 6 - PhoneBook Задача 7 - CoolNumbers
User StudentHelp : 18 апреля 2023
850 руб.
[Skillbox] Java-разработчик - модуль 10 - массивы и коллекции. 2023 год.
[Skillbox] Java-разработчик - ВСЕ РЕШЕНИЯ НА ВСЕ МОДУЛИ !!!
[Skillbox] Java-разработчик - ВСЕ РЕШЕНИЯ НА ВСЕ МОДУЛИ Представлены все решения на все модули курса Java - разработчик . Сдано в 2021 году! Модули: 03_ObjectsAndClasses 04_NumbersStringsAndDates 05_ArraysAndCollections 05_StaticFinal 06_InheritanceAndPolymorphism 07_AdvancedOOPFeatures 07_NumbersAndDates 08_ExceptionsDebuggingAndTesting 09_FilesAndNetwork 10_SQLAndHibernate 11_Multithreading 12_SpringBootWebDevelopment 13_NoSQL 15_BigData 16_Performance 18_Algorithms 19_Data
User StudentHelp : 20 декабря 2021
2000 руб.
[Skillbox] Java-разработчик - ВСЕ РЕШЕНИЯ НА ВСЕ МОДУЛИ !!!
[Skillbox] Java-разработчик - модуль 9 - Строки
[Skillbox] Java-разработчик - модуль 9 - Строки Задание 1 - SequentialWordsNumbers Задание 2 - SplitText Задание 3 - PhoneCleanerRegex Задание 4 - TotalEarningsCalculator Задание 5 - FullNameFormatter Задание 6 -TotalEarningsCalculatorRegex Задание 7 - FullNameFormatterRegex
User StudentHelp : 11 апреля 2023
720 руб.
[Skillbox] Java-разработчик - модуль 9 - Строки
[Skillbox] Java-разработчик - модуль 7 - Примитивы
[Skillbox] Java-разработчик - модуль 7 - Примитивы Задача 1 - Запустите код проекта IntOrInteger, найдите ошибку и исправьте класс Container. Задача 2 - Напишите в этом же проекте код, который с помощью цикла и преобразования чисел в символы найдёт все числовые коды букв русского алфавита — заглавных и строчных, в том числе буквы Ё.
User StudentHelp : 5 апреля 2023
390 руб.
[Skillbox] Java-разработчик - модуль 7 - Примитивы
[Skillbox] Java-разработчик - модуль 8 - числа и строки
[Skillbox] Java-разработчик - модуль 8 - числа и строки Задача 1 - TrucksAndContainers Задача 2 - Birthdays Задача 3 - GeometryCalculator Задача 4 - Periods
User StudentHelp : 8 апреля 2023
750 руб.
[Skillbox] Java-разработчик - модуль 8 - числа и строки
Skillbox. Итоговый проект курса «Поисковый движок». Java-разработчик.
Skillbox. Java-разработчик. Итоговый проект курса «Поисковый движок» Данный проект сдан в 2021 году, но актуален по сей день. Проект включает описание самого, проекта, техническую спецификацию, Т.З, критерий оценивания, а также описание подключение и создание базы и таблиц, а также скрипт для создания самих таблиц. В стоимость входит поддержка и исправление замечаний от куратора на всем пути до сдачи проекта.
User StudentHelp : 25 марта 2025
4000 руб.
Skillbox. Итоговый проект курса «Поисковый движок». Java-разработчик.
[Skillbox] Java-разработчик - модуль 19 - Практическая работа 19.18 - MovementsList
[Skillbox] Java-разработчик - модуль 19 - Практическая работа 19.18 - MovementsList Цель задания Научиться читать файл CSV и анализировать его. Что нужно сделать Задание выполняйте в проекте FilesAndNetwork/homework_3 Напишите код, который будет читать файл csv банковской выписки movementsList.csv и парсить полученные строки. Путь к файлу выписки храните в константе. Получение суммы расхода и дохода по всем операциями реализуйте в классе Movements, в методах getExpenseSum() и getIncomeSu
User StudentHelp : 24 декабря 2023
400 руб.
[Skillbox] Java-разработчик - модуль 19 - Практическая работа 19.18 - MovementsList
[Skillbox] Java-разработчик - модуль 19 - Практическая работа 19.19 - Lenta
[Skillbox] Java-разработчик - модуль 19 - Практическая работа 19.19 - Lenta Цель задания Научиться получать изображения с сайта парсингом, используя библиотеку jsoup. Что нужно сделать Напишите программу, которая: получает с помощью библиотеки jsoup HTML-код страницы находит в HTML-коде теги img и получает абсолютные ссылки на изображения из атрибута src; скачивает изображения в папку images проекта, при этом сохраняя оригинальные названия файлов; выводит в консоль список c названиями скача
User StudentHelp : 24 декабря 2023
400 руб.
[Skillbox] Java-разработчик - модуль 19 - Практическая работа 19.19 - Lenta
Теория вероятностей математическая статистика и случайные процессы (2 сем.) Контрольная работа №1 Вариант 5
Вариант: 5 Задача 1 (текст 2): вероятность появления поломок на каждой из соединительных линий равна . Какова вероятность того, что хотя бы две линии исправны? Задача 2 (текст 3): в одной урне белых шаров и черных шара, а в другой - белых и черных. Из первой урны случайным образом вынимают шара и опускают во вторую урну. После этого из второй урны также случайно вынимают шара. Найти вероятность того, что все шары, вынутые из второй урны, белые. Задача 3 (текст 4): в типографии им
User Keeper : 8 мая 2018
100 руб.
Теория вероятностей математическая статистика и случайные процессы (2 сем.) Контрольная работа №1 Вариант 5
Разработка комбинированного агрегата для предпосевной обработки почвы на базе культиватора (дипломный проект)
Дипломный проект на тему «Разработка комбинированного агрегата для предпосевной обработки почвы на базе культиватора» 4 записи формата А4 на 135 страницах и 11 листов графической части формата А1. В П3 приведены 19 рисунков, 19 таблиц и 30 источников информационных ресурсов. Представлено следующее: обзор существующих в настоящее время технологий предпосевной обработки, бенчмаркинг современных агрегатов и машин для предпосевной обработки, описана суть разрабатываемого агрегата для предпосевной
User Shloma : 11 июля 2025
1590 руб.
Разработка комбинированного агрегата для предпосевной обработки почвы на базе культиватора (дипломный проект)
Сутність впливу глобалізації на стратегії розвитку національних економік
Зміст Вступ 1. Сутність процесу глобалізації, її позитивні та негативні наслідки 2. Вплив глобалізації на економічну політику 3. Основні напрями стратегії розвитку національної економіки України Висновки Список використаної літератури Вступ Процес глобалізації є однією з найактуальніших проблем на сьогодні оскільки характеризує стан і розвиток сучасної економічної системи. Все більш гострим стає питання розвитку країн з перехідною економікою та тих, що розвиваютьс
User evelin : 16 ноября 2013
5 руб.
Задачи по облигациям
1. Инвестор приобрел две облигации номиналом 500руб. каждая. Процентный доход по одной составляет 5,5%, по другой – 5,3%. Какова разность годового дохода между ними? 2. Облигация номиналом 1000руб, процентным доходом 20% и сроком обращения 1год, продается через 120 дней после ее приобретения у эмитента. Какова цена облигации при прочих равных рыночных условиях?
User Sannet78 : 21 октября 2020
200 руб.
up Наверх