Бонусное задание | 12 лекция | 5 уровень

5 уровень, 12 лекция
Открыта

— Здорово, боец!

— Здравия желаю, товарищ капитан!

— У меня для тебя шикарная новость. Вот тебе задания для закрепления полученных навыков. Выполняй их каждый день, и твои навыки будут расти с неимоверной скоростью. Они специально разработаны для выполнения их в Intellij IDEA.

8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Разные методы для разных типов
Итак, полиморфизм. Вы о нём ещё не забыли? Тогда решаем следующую задачку: считываем с консоли данные, пока не будет введено слово "exit". Для каждого значения, кроме "exit", вызываем метод print, какой именно принт — зависит от значения. Например, если значение содержит точку, то вызываем print для Double, а если это число от 0 до 128 — то для short.
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Тренировка мозга
Найдите логическую ошибку: утка (Duck) должна корректно реализовывать интерфейс CanMove. Исправьте ошибку так, чтобы получить правильный результат.
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
ООП. Перегрузка
Перегрузите метод info(Object s) в классе Tree дважды, чтобы получилось 3 метода info(Object s), info(Number s), info(String s). После этого разберитесь с методом info(Object s) и создайте функциональность новых методов по аналогии. Например, для метода info(Number s) результат может быть таким: «Дерево № 123 , метод Number, параметр Short.
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Закрепляем паттерн Singleton
Разберёмся с паттерном Singleton на примере светила и планет солнечной системы. Для начала займитесь поиском и найдите где-нибудь в интернете пример "ленивой" реализации Singleton и создайте по образу и подобию три Singleton-класса: Sun, Moon и Earth. Затем реализуйите в них интерфейс Planet. И проделайте ещё парочку операций.
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Перегрузка конструкторов
В этой задаче нам предстоит создать класс Solution и его потомка SubSolution, а для этого потомка — создать конструкторы и исправить их модификаторы доступа так, чтобы получить три конструктора с разными модификаторами (кроме private).
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Порядок загрузки переменных
Итак, полезная задачка на отладку. У вас есть код, в котором нужно разобраться: узнайте, что и в какой последовательности инициализируется. Для этого можно использовать отладчик в IntelliJ IDEA и его брейкпоинты. Затем исправьте порядок инициализации так, чтобы получить определённый результат.
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Файл в статическом блоке
Инициализируйте переменную Statics.FILE_NAME полным путем к файлу с данными, который содержит несколько строк. После этого в статическом блоке считайте из файла с именем Statics.FILE_NAME все строки, и добавьте их по отдельности в List lines.
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Дебаг, дебаг, и еще раз дебаг
Снова и снова мы ищем чужие ошибки и исправляем их... Такова наша программистская доля. Наша программа снова выводит что-то не то: закралась ошибка (всего одна!). Найти и обезвредить! Для этого воспользуйтесь дебаггером IntelliJ IDEA.
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Парсер реквестов
Считайте с консоли URL-ссылку. Затем выведите на экран через пробел список всех параметров (Параметры идут после ? и разделяются &, например, lvl=15). URL содержит минимум 1 параметр. Если присутствует параметр obj, то передайте его значение в нужный метод alert.
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
ООП. Hrivna — тоже деньги
Исправьте класс Hrivna так, чтоб избежать возникновения ошибки StackOverflowError. При этом, как ни парадоксально, Hrivna должна быть наследницей класса Money и в этом классе должен быть реализован метод getAmount.

— Те задания были для духов. Для дедушек я добавил бонусные задания повышенной сложности. Только для старослужащих.

8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Осваивание статического блока
Cоздадим классы Plane и Helicopter, реализующие интерфейс CanFly, после чего в статическом методе reset класса Solution нужно считать с консоли параметр типа String и если он равен helicopter (plane), то статическому объекту CanFly result присвоить объект класса Helicopter (Plane). В статическом блоке инициализировать CanFly result вызвав метод reset.
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Template pattern
Создадим алгоритм работы баристы в классе DrinkMaker. Он будет выбирать подходящую чашку, класть ингридиенты и заливать жидкостью. Также создадим узкоспециализированные алгоритмы для чая и латте, унаследовав их от DrinkMaker.
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Факториал
На планете Линейный Хаос поиском факториала двузначных чисел на их планете принято занимать младенцев. Ну а мы подойдём по-взрослому, по-программистски, и напишем метод, вычисляющий факториал вплоть до введённого числа.
Комментарии (118)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Dante16 уровень, Одесса
25 февраля, 19:13
Подскажите, плиз, в задаче ООП. Перегрузка есть вот такие значения %d, %s. Не могу понять как это использоватью Где можно прочесть? Ну или если там все легко - подскажите своими словами. Спасибо
Вячеслав20 уровень, Санкт-Петербург
26 февраля, 10:45
Почитайте про String.format(). Вкратце, он собирает финальную строку из переданной строки (с %d и %s) и аргументов через запятую, которые будут вставлены в переданную строку вместо вот этих %d, %s в том же порядке, в котором Вы их передадите.
Andrey Kovalko20 уровень, Минск
13 февраля, 11:47
Хочу обратить внимание!!!!!!!!!!!!!! Ставьте breakpoint на строке public static void main!!!!!!!!!!!!!!!!!!!! Затем после запуска команды debug пользуйтесь F7 - таким образом вы пошагово пройдете всю программу с заходом в методы. К сожалению, потратил много времени чтобы это узнать.
VK19 уровень, Киев
19 февраля, 16:33
спасибо!
Вячеслав18 уровень
8 января, 18:53
Кстати, когда убрали ярлычки сложности, сложные(тсс) задачи стали решаться легче, нет установки, типа сложно и рано ещё.
Игорь17 уровень
3 февраля, 22:54
Разве убрали? Вроде возле более сложных задач по прежнему находится значок звездочки. Или раньше еще что-то было?
pchelovod195019 уровень, Москва
4 января, 18:50
Задача про LatteMaker, ReaMaker: 5. Каждый метод должен выводить в консоль свою фразу не пересекаясь с другими методами. Прошедшее валидатор (успешное) решение противоречит условию задачи №5. Написано что в консоль должны выводиться фразы. Я честно вывел их в консоль созданием 2-х объектов и вызовом в конструкторах объектов типа LatteMaker и TeaMaker неабстрактного метода базового абстрактного класса: super.makeDrink(). Валидатор не пропустил. Убрал весь вывод и конструторы с super.makeDrink() и тогда всё получилось Может быть в условиях написать про вывод на экран более определённо и попросить реализовать этот вывод. Возможно даже без намёка как это делать?
Даниил24 уровень
26 декабря 2018, 21:30
В сумме, примерно целый божий день потратил на весь этот блок.... Это было тяжело.
Даниил24 уровень
26 декабря 2018, 21:31
Чисто у кого есть бесполезное хобби сравнивать кол-во материи, то получив её везде где только можно и не открыв следующее занятие: 937
Дмитрий Ковтонюк19 уровень, Киев
3 января, 16:08
371. видосы не сотрю. наверное не все задачки сделал..
Ildar Shaydullin18 уровень, Nizhniy Novgorod
13 декабря 2018, 21:06
Есть нормальное видео как дебажить?
дмитрий олихвер20 уровень, Минск
5 декабря 2018, 18:14
что делать если я не могу использовать запуск без проверки и дебаг(или так у всех)?
Мишаня17 уровень
7 декабря 2018, 08:39
sdk слетела в проекте похоже у вас , либо укажи по новой куда установлена , либо создай новый проект
Andrii Gorshunov34 уровень
28 ноября 2018, 15:05
Задача: Разные методы для разных типов через Scanner решается и выводится корректно, однако валидатор вообще не принимает решения. Все в красном. Может я что-то упустил но результат был точно таким как в примере. В итоге - переделал через bf. Задача: Парсер реквесто довольно напряжная в плане угождения валидатору, но прикольно поиграться с substring(s.indexOf("=") ) , String[] arr = s.split("&);тд.. Задача: Факториал (спойлер гуглить BigInteger) Задачу про чай и кофе решили 14321 чел. (по состоянию на 29 ноября 2018г) :). Другие задачи со звездочкой приблизительно столько же решили. Дерзайте, они клевые. В целом приятный блок, двигаемся дальше ;)
Artem Nefodov18 уровень, Харьков
29 ноября 2018, 08:54
Задача: Тренировка мозга Условие: Найти логическую ошибку: утка(Duck) должна корректно реализовывать интерфейс CanMove. Исправьте ошибку. Ты точно про эту задачу говоришь?
Andrii Gorshunov34 уровень
29 ноября 2018, 10:50
:) исправил
John Doe16 уровень, Одесса
18 ноября 2018, 22:54
Про гривну чет обидно было. Она примерно в два с половиной раза дороже родной валюты автора, по текущему курсу.
John Doe16 уровень, Одесса
18 ноября 2018, 21:08
Файл в статическом блоке Тренировка на внимательность: Statics.FILE_NAME находится в отдельном классе пакета, Statics.