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

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

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

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

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

3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
Все мы немного кошки…
Вам было бы приятно, если бы вас называли Пушистиком? А если при этом вы — рыжая гроза района, потерявшая глаз в районной бойне за территорию? Представляете, такой бравый земной кот, главный на улице — и вдруг — Пушистик! Собакам на смех. Помогите коту сохранить гордость, переопределите метод getName.
3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
Больше не Пушистик
Итак, оказалось, что рыжую бестию, месяцами воевавшую за власть в объединении Семи Дворов и Пятой Проходной, хозяева назвали Пушистиком. Бестия не хочет быть Пушистиком. Нужно поменять исходные данные и переопределить метод setName. Иначе не видать Бестии власти, как своего отражения в зеркале.
3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
И снова Пушистик…
Так вот. Если вы ещё не знаете, Рыжий хулиганистый кот весьма недоволен тем, что хозяева прозвали его Пушистиком. Один из методов борьбы с несправедливостью жизни — сокрытие фактов. Перед вами есть класс Cat. Напишите метод, который не позволит вывести на экран позорную надпись «Я – пушистик».
3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
Неведома зверушка
После ядерного взрыва прошло уже 200 лет. Животные и разумные формы жизни вылезли из коллекторов и снова начали плодиться и размножаться. Помогите разумным формам жизни составить каталог оставшихся животных.
7
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
Посетители
В террианский зоопарк прибыла группа туристов с планеты Талли. Оказалось, что в заведении все таблички с названиями были украдены роботами, нуждающимися в металле для лечения. Простим роботов, но напишем метод, который определяет, какой объект в него передали (кот, лев, тигр, бык, корова или просто животное).
3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
Лазать, летать и бегать
На самом деле то, что мы сейчас с вами делаем, — это самая настоящая затравка для создания компьютерных игр, а точнее, их персонажей, которые бегают, плавают, летают… Так что смелее вперед, создаем интерфейсы движения и добавляем их в классы Тигра, Собаки, Кота и Утки.
3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
CanFly, CanRun, CanSwim для классов Duck, Penguin, Toad
Рожденный ползать летать не должен? Как бы ни так! Вы здесь — программист, вы и решаете, кто и на что способен. Нужен летающий пингвин или жаба-марафонец? Да пожалуйста, только код внятный напишите. А теперь задание. Добавить интерфейсы движения классам животных. Подробнее — в условии задачи.
3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
Интерфейсы к классу Human
Человек — очень сложный организм. И программировать его сложно. Но мы попытаемся, хотя бы на начальном уровне. У вас есть класс Human и интерфейсы. Вам нужно добавить как можно больше интерфейсов к классу Human, но так, чтобы он не стал абстрактным классом. Добавлять методы нельзя.
3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
Родитель класса CTO
Знаете ли вы, откуда берутся станции технического обслуживания? Как и продукты в магазинах, они не самозарождаются в недрах планеты. За ними стоят люди, роботы и маллорианцы. В нашей задаче нужно классу СТО добавить правильного родителя, и сделать это нужно так, чтобы класс перестал быть абстрактным.
3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
Попадание в десятку
В школе «Яблочко» раньше пользовались пятибалльной системой, теперь перешли на десятибалльную. Вот и у вас есть метод, который печатает цифру пять, а вам нужно, чтобы на экране появлялась десятка. Что вы сделаете? Напишете совершенно новый метод или перегрузите старый?

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

3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
Ненужные абстракции
В этой задачке — ну просто как в современном искусстве планеты Фифтиз: повсюду ненужные абстракции, а там, где такой подход бы пригодился, главенствует формальный реализм. Как вы уже, наверное, догадались, перед вами — головоломка: нужно расставить ключевые слова abstract правильно, добившись того, что программа скомпилируется.
3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
Нужно добавить в программу новую функциональность
Крылатый конь Пегас, любимец муз… Даже в программировании должно быть немного поэзии. Ну вот, берем коня, интерфейс полёта, прикручиваем одно к другому и… получаем Пегаса! Пускай это звучит непоэтично… Зато полезно и действенно. Вы ещё здесь? Уже можно решать!
3
Задача
Java Core,  2 уровень,  12 лекция
Недоступна
Изоморфы наступают
Раз мы говорим об упорядоченных изоморфах с планеты Линейный Хаос, значит, мы собираемся решать задачу на знание алгоритмов. Ибо изоморфы без алгоритмов — не изоморфы вовсе. Да и не станут они разговаривать с человеком или роботом, который не может найти минимум в массиве и его позицию. Но вы-то — сможете?

 

Комментарии (259)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Сергей 13 уровень
12 января, 07:11
возможно я удивлю составителей задач, но Жаба прекрасно умеет передвигаться по земле. Даже лучше чем плавает.
Павел 15 уровень
8 января, 08:25
Задача о "террианском зоопарке" решается влет, если вспомнить, как ловить исключения, т.е. более общие ниже.
Павел 15 уровень
9 января, 07:30
Для желающих понимать глубже. Почему это не скомпилируется: public interface CanRun { void run();} public class Dog implements CanRun { void run() {} } Естественно, все это внутри класса))
Ilia Fesenko 14 уровень
9 января, 12:12
чтобы не терять времени и переписывать(копировать методы в классы) достаточно к класу прибавить просто abstract ибо никакого обьекта не создается.
Ilia Fesenko 14 уровень
9 января, 18:42
А разве ты вообще что-то спрашивал? Мне кажется ты более утверждал, на что я ответил как можно сделать более проще эту задачу.
Павел 15 уровень
9 января, 19:07
"Почему это не скомпилируется" - это ли не вопрос? Впрочем, как скажешь...))
Ilia Fesenko 14 уровень
9 января, 19:15
А к чему для желающих понимать глубже тогда.. Но да ладно.. Не компилит из-за того, что метод должен быть public. В обычном классе нельзя написать просто void и имя метода, он должен быть или public, или private, или protected... В интерфейсе он всегда по умолчанию public. Допиши в run к методу public и проблемы не будет больше
Павел 15 уровень
9 января, 20:44
Некоторые люди хотят знать все очень хорошо, а для этого нужно копать глубже, если ты не знал. "В обычном классе нельзя написать просто void и имя метода" - уверен?
Ilia Fesenko 14 уровень
10 января, 00:01
У тебя самолюбие заделось или что? Тогда нужно точнее формулировать вопрос, откуда я знаю что там и у кого глубже. Да и по меньшей мере знака вопроса нехватало, поэтому мне комментарий не особо был понятен. В твоем случае уверен, ты переписываешь метод из интерфейса. "Все абстрактные, стандартные и статические методы в интерфейсе являются неявно открытыми, поэтому модификатор public опускается". Если создать отдельно, не по заданию(тоесть в обычном классе), тогда да и такой метод будет иметь модификатор ......... (гугл ответит на все вопросы). Изучи модификаторы.................................
Павел 15 уровень
10 января, 08:56
Ну, братец, как же ты примитивно мыслишь (поясняю, твой пассаж о самолюбии). А жаль! Прости, что наталкиваю тебя на более глубокое понимание модификаторов доступа, например, по умолчанию. Порекомендую, в свою очередь, меньше читать того, что написано на заборах гугла, а более внимательно перечитывать Эккеля с Хорстманом. И конечно же удачи тебе и близким в кодировании и декодировании информации в 2021 году!
Ilia Fesenko 14 уровень
10 января, 10:45
Мне кажется, что тебе стоит по другому относится к окружающим. :) Ну или сначала прочитать те книги, а потом начинать тут писать задачи чтобы не задавать вопросов, а то зло прям и прет) Дело частично в модификаторе(ПЫСЫ. ты переписываешь метод, а не создаешь заново) и именно гугл бы тебе ответил на этот вопрос минут за 5 вместо 10 страниц книги, если вообще сразу найти эту тему, и ошибку ты бы понял. А еще лучше открой компилер и попробуй сам написать, там поймешь точно почему если поразмыслишь. Удачи)
Павел 15 уровень
10 января, 11:59
Узнаю брата хохла)). Молодец! Тока, жаль, что ты ничего не понял, а стал ерепениться((. Не всем дано, видать (про декодирование информации я не зря написал).
Ilia Fesenko 14 уровень
10 января, 12:12
.....................................................................................................
Vlad Zaycev 15 уровень, Москва
6 января, 15:37
@ Override - это аннотация, и в программе они будут встречаться/использоваться достаточно часто. Рекомендую данную статью для ознакомления с ними. https://habr.com/ru/company/golovachcourses/blog/217595/
Павел 15 уровень
8 января, 08:31
На YouTube. есть несколько сезонов от Ивана Головач, прочитанных им не харьковских курсах с 2012 по 2015.
iAmTheMoon 15 уровень, Санкт-Петербург
28 декабря 2020, 14:08
Что за неприязнь к свиньям? 🤨🐷🐷🐷
Серж 16 уровень, Омск
6 января, 18:41
Действительно странно. Свиньи - ох...нная тема! (с)
🦔 Виктор админ Java Android канала в telegram @LetsCodeItExpert
25 декабря 2020, 18:16
Самый популярный вопрос 12 уровня: так зачем эти интерфейсы нужны? Нигде ещё так часто в комментах не спрашивали зачем всё это : ) Нашёл в дебрях задач ещё одно неплохое, ёмкое объяснения от Василия: «При написании очень большого кода интерфейс гарантирует полную реализацию. Интерфейс содержит методы обязательные для реализации в классе-наследнике.. Например - чайник. Создали обычный чайник, а потом нужно создать электрический чайник. Допустим, в программе уже есть миллионы разных чайников, и они все так или иначе греют воду и т.д. Но маркетологи сказали, что нужно больше чайников богу чйников. Без наследования интерфейса, мы создали наш электрочайник и запустили в производство. Клиент его купил, а оказалось, воду-то он греет, но её нельзя оттуда вылить. Мы забыли реализовать метод, который выливает воду из чайника (ну из-за того, что там нам и так пришлось писать сотню-другую методов, ну забыли, с кем не бывает). Всё, что должен уметь чайник, было описано в интерфейсе. А если нужно было что-то ещё, например, подсветка, то мы бы описывали подсветку уже в классе, т.к это уже дополнительные свойства, не обязательные для всех чайников. Ну так вот: если бы мы использовали интерфейс, компилятор ещё бы на стадии проектирования сказал нам, что чайник не умеет выливать воду. Но мы не использовали интерфейс и получили то, что получили. Зато с подсветкой! Как-то так.» Всё получится! -- tlgrm: @LetsCodeIt | @SefoNotasi
Константин 18 уровень, Алматы
24 декабря 2020, 20:05
Получается так)
Антон 15 уровень, Москва
20 декабря 2020, 18:50
Который уровень удивляюсь авторам JR, придумывающим к самым простым и проходным задачам забавные истории
JI9ryLLIoHoK 14 уровень, Москва
16 декабря 2020, 04:26
Задача посетители немного с подвохом, родительские классы надо проверять после классов-потомков.
Сергей 17 уровень, Москва
6 декабря 2020, 16:46
Капец! После десятка изи задач последняя заняла аж полчаса. Ощущение, словно это не проходили. Нельзя так подставлять!
Fomka_Wyverno 18 уровень, Киев
10 декабря 2020, 15:59
Так легкая была, ты чего. Просто через фор проверить, и при этом зарание создать переменные минимума и индекса, и записывать в эти переменные если найдешь меньше чем уже было найдено.
Александр СМИРНОВ 13 уровень, Самара
5 декабря 2020, 07:37
Вчера не смог запустить Идею. И цепочка беспрерывных рабочих дней прервалась. Обидно :)
Сергей 17 уровень, Москва
10 декабря 2020, 16:01
береги для таких случаев задачи с набиранием кода и просмотром роликов. Они тоже считаются задачами.
Сергей 23 уровень, Москва
18 декабря 2020, 10:59
Там ачивка даже за 100 непрерывных дней есть😳
Regina Bulanova 18 уровень, Рязань
24 декабря 2020, 12:49
Так можно же решать прямо на сайте))