Бонусное задание | 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 лекция
Недоступна
Факториал
На планете Линейный Хаос поиском факториала двузначных чисел на их планете принято занимать младенцев. Ну а мы подойдём по-взрослому, по-программистски, и напишем метод, вычисляющий факториал вплоть до введённого числа.
Комментарии (154)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Александр16 уровень, Одесса
2 часа назад
О, прикольно. На последней задачке рекурсию даже вспомнил.
public static BigInteger getFactRecursive(int n) {
    BigInteger result;

    if (n == 1)
        return BigInteger.valueOf(1);

    return result = getFactRecursive(n - 1).multiply(BigInteger.valueOf(n));
}
WantToSleep22 уровень, Москва
18 августа, 19:31
АААА компилятор ниправильный!!!!!
Руслана15 уровень
вчера, 22:03
а я думала, что валидатор неправильный, когда делала задачу "Парсер реквестов" )))
Максим19 уровень
10 августа, 15:18
Почему в задании Дебаг, дебаг и еще раз дебаг мой ответ сошелся только когда я *******(правильное действие)? Можете, пожалуйста, написать в личку? Я просто раз 7 ее еще раз попробовал проанализировать, а так и не совсем понял. Помогите, пожалуйста
Максим19 уровень
10 августа, 13:31
Кажется, что меня одного смутили дебаги... То что с ними не учили пользоваться... Эхх... Пойду в гугл
Ilya Ivanov22 уровень, Казань
10 августа, 13:41
задачу и без них можно решить, просто дебаги помогают найти ошибку в коде
Максим19 уровень
10 августа, 15:14
Да это я в курсе, просто считаю, что нужно было бы хотя бы маленькое обучение
Igor Grynishyn18 уровень, Киев
1 августа, 09:02
Парсер реквестов - это взрыв для мозга. Решил двумя способами и не один не проходит валидацию! Код работает, подскажите как переделать или что не учтено. https://javarush.ru/help/23811
Olga Enaldieva19 уровень
4 июля, 16:02
ООП.перегрузка совсем бесполезная задача, ничему не научила. Просто скопировал метод и слегка поменял его содержимое.
Илья17 уровень
8 августа, 09:32
Если ничему не научила - значит, ты уже умеешь)
AlexDrob18 уровень
25 июня, 06:10
Хорошие задачи
Dmitry Potamoshnev30 уровень, Москва
15 июня, 11:04
Разные методы для разных типов Если ввести значение за пределами Integer, то правильнее бы было выводить в double или long. И задача стала бы интереснее.
Самуил Олегович26 уровень, Киев
8 июня, 12:35
929 ЧМ
Дмитрий Ушаков23 уровень, Красноярск
31 мая, 13:05
я 1 проверял до скольки максимум будет считаться факториал? надоело на 500000