— Привет, Амиго! Вот тебе пара сотен задач на полиморфизм.

— Что? Еще и сотня задач?!

— Шучу. Всего десять. То есть пять я хотел сказать.

3
Задача
Java Core,  2 уровень2 лекция
Недоступна
Киты и коровы
В нормальной жизни кита с коровой не перепутать (хотя в террианских водах порой встречаются морские коровы, а на планетах Содружества и не такое встретишь!), а вот в программировании — сколько угодно. Напишем правильный геттер для класса кит, чтобы программа выдавала фразу «я не корова, я — кит».
3
Задача
Java Core,  2 уровень2 лекция
Недоступна
Кит, коровий потомок
Переопределение методов в Java — очень сильный инструмент. Так что усваиваем его на практике, начинаем прямо сейчас. У нас есть кит, потомок коровы. Не спрашивайте, почему так получилось. Дело семейное… Переопределим геттер киту так, чтобы на экран не выводилось сообщение, что он — корова.
3
Задача
Java Core,  2 уровень2 лекция
Недоступна
Кесарю — кесарево
Не вызывает сомнения то, что коты и собаки — это животные. И их потомки должны быть животными. Но не просто животными, а совершенно конкретными животными, котами и собаками. Согласны? В таком случае, переопределите метод getChild в классах Cat и Dog, чтобы кот порождал кота, а собака – собаку.
3
Задача
Java Core,  2 уровень2 лекция
Недоступна
То ли птица, то ли лампа
Что общего у птицы и лампы? То, что и птицы, и лампы могут быть объектами своих классов. А объекты можно передавать в методы в качестве переменных. В этой задаче пишем метод, который определяет, объект какого класса ему передали, и выводит на экран одну из надписей: Кошка, Собака, Птица, Лампа.
3
Задача
Java Core,  2 уровень2 лекция
Недоступна
Определимся с животным
Жизненно важно уметь определять, к какому классу относится животное, считает заводчик кошек Павловна. Давайте поможем Павловне и напишем метод, который определяет, объект какого класса ему передали, и возвращает результат: «Корова», «Кит», «Собака», «Неизвестное животное».