[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.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
[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
ММА/ИДО Иностранный язык в профессиональной сфере (ЛТМ) Тест 20 из 20 баллов 2024 год
ММА/ИДО Иностранный язык в профессиональной сфере (ЛТМ) Тест 20 из 20 баллов 2024 год Московская международная академия Институт дистанционного образования Тест оценка ОТЛИЧНО 2024 год Ответы на 20 вопросов Результат – 100 баллов С вопросами вы можете ознакомиться до покупки ВОПРОСЫ: 1. We have … to an agreement 2. Our senses are … a great role in non-verbal communication 3. Saving time at business communication leads to … results in work 4. Conducting negotiations with foreigners we shoul
User mosintacd : 28 июня 2024
150 руб.
promo
Задание №2. Методы управления образовательными учреждениями
Практическое задание 2 Задание 1. Опишите по одному примеру использования каждого из методов управления в Вашей профессиональной деятельности. Задание 2. Приняв на работу нового сотрудника, Вы надеялись на более эффективную работу, но в результате разочарованы, так как он не соответствует одному из важнейших качеств менеджера - самодисциплине. Он не обязателен, не собран, не умеет отказывать и т.д.. Но, тем не менее, он отличный профессионал в своей деятельности. Какими методами управления Вы во
User studypro : 13 октября 2016
200 руб.
Особенности бюджетного финансирования
Содержание: Введение Теоретические основы бюджетного финансирования Понятие и сущность бюджетного финансирования Характеристика основных форм бюджетного финансирования Анализ бюджетного финансирования образования Понятие и источники бюджетного финансирования образования Проблемы бюджетного финансирования образования Основные направления совершенствования бюджетного финансирования образования Заключение Список использованный литературы Цель курсовой работы – исследовать особенности бюджетного фин
User Aronitue9 : 24 августа 2012
20 руб.
Программирование (часть 1-я). Зачёт. Билет №2
ЗАЧЕТ по дисциплине “Программирование (часть 1)” Билет 2 Определить значение переменной y после работы следующего фрагмента программы: a = 3; b = 2 * a – 10; x = 0; y = 2 * b + a; if ( b > y ) or ( 2 * b < y + a ) ) then begin x = b – y; y = x + 4 end; if ( a + b < 0 ) and ( y + x > 2 ) ) then begin x = x + y; y = x – 2 end;
User sibsutisru : 3 сентября 2021
200 руб.
Программирование (часть 1-я). Зачёт. Билет №2
up Наверх