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

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

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

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

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

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

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 лекция
Недоступна
Факториал
На планете Линейный Хаос поиском факториала двузначных чисел на их планете принято занимать младенцев. Ну а мы подойдём по-взрослому, по-программистски, и напишем метод, вычисляющий факториал вплоть до введённого числа.
16
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Разные методы для разных типов
Итак, полиморфизм. Вы о нём ещё не забыли? Тогда решаем следующую задачку: считываем с консоли данные, пока не будет введено слово "exit". Для каждого значения, кроме "exit", вызываем метод print, какой именно принт — зависит от значения. Например, если значение содержит точку, то вызываем print для Double, а если это число от 0 до 128 — то для short.
4
Задача
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.
16
Задача
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.
16
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
Парсер реквестов
Считайте с консоли URL-ссылку. Затем выведите на экран через пробел список всех параметров (Параметры идут после ? и разделяются &, например, lvl=15). URL содержит минимум 1 параметр. Если присутствует параметр obj, то передайте его значение в нужный метод alert.
8
Задача
Java Core,  5 уровень,  12 лекция
Недоступна
ООП. Hrivna — тоже деньги
Исправьте класс Hrivna так, чтоб избежать возникновения ошибки StackOverflowError. При этом, как ни парадоксально, Hrivna должна быть наследницей класса Money и в этом классе должен быть реализован метод getAmount.
Комментарии (272)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Павел 16 уровень, Подольск
вторник, 17:47
Статья про дебаггер: https://javarush.ru/groups/posts/2463-debug-v-intellij-idea-gayd-dlja-novichkov
валидатор16 уровень
31 июля, 12:54
Парсер реквестов тестируйте следующими строками:
http://javarush.ru/alpha/index.html?name=Amigo&lvl=15&view
http://javarush.ru/alpha/index.html?object=3.14&name=Amigo
http://javarush.ru/alpha/index.html?obj=text&name=Amigo
Спасибо Ksenia Volkova за подсказку в разделе "Помощь".
Valua Sinicyn16 уровень, Харьков
22 июля, 12:27
Дебаг, дебаг, и еще раз дебаг после этой задачи я понял, что без дебагера ну никак )):
Pavel Kurchavov22 уровень, Тверь
13 июля, 15:35
То чувство, когда "задания для дедушек" проще, чем для духов.
Сергей28 уровень, Минск
24 июня, 17:57
Планета по имени Солнце
Sanya Molekulov19 уровень
10 июля, 15:45
Прожитых под светом планеты по имени Солнце
Кунг-Фу-Панда24 уровень, Кунг-Фу-Сити
17 июня, 11:57
Парсер реквестов 63 строки)) с первой попытки, 1,5-2 часа. Сам от себя охренел! Код конечно не самый удобный для чтения как по мне!)))
Антоний Шаламов19 уровень, Хабаровск
27 июня, 23:31
У меня 43 строки..
Lora_Cat20 уровень, Киев
28 июня, 12:24
У меня 37, а если убрать стартовые комменты и пустые строки, то будет меньше 30.
Антоний Шаламов19 уровень, Хабаровск
28 июня, 14:00
Молодец!)
Кунг-Фу-Панда24 уровень, Кунг-Фу-Сити
29 июня, 06:16
👍
Игорь16 уровень, Москва
7 часов назад
какой смысл хвастаться количеством строк кода если это далеко не самый главной показатель оптимальности программы?
Сергій Грищенко25 уровень, Киев
6 июня, 16:41
Это я, когда ставлю сам себе пометку "решение" в своём же вопросе, когда через 5 минут сам понял ответ 😃
Антон Пономарев20 уровень, Санкт-Петербург
3 июня, 16:37
кому не хватило материала про паттерны и Singleton вот: паттерны и синглетоны это уже много раз было, но все же
Igor16 уровень, Edmonton
25 мая, 20:27
уххх.. Парсер реквестов - офигенная задачка!
Alexandr Mihailovich20 уровень, Kursk
28 мая, 21:11
мне больше о файлах в статике понравилась ) лучше разобрался с обработкой исключений и правильным освобождением ресурсов
Денис Пшеничный16 уровень, Киев
22 мая, 19:02
у меня походу скоро будет нервный срыв