digital-garden/archive/Я.Практикум/Сообщения/Про приведения.md

23 lines
1.4 KiB
Markdown
Raw Normal View History

2024-06-13 21:01:37 +03:00
# Про приведения
Можно закинуть после харда про полиморфизм
## Задачка
Всем привет
Как вам хард вебинар? Надеюсь стало еще понятнее
А я к вам с небольшой задачкой))
Какой метод будет вызван в этом случае. Голосуйте с помощью эмоджи.
## Ответ
Всегда выбирается более специализированный метод, если это возможно. То есть если есть какая-то альтернатива `Object`, которая может подойти, то выбирается она.
Как пример есть класс `Parent`, есть его наследник `Child`. И код как на первом скрине. Мы попадем в `Child`, если убрать метод с `Child` то попадем в Parent, и только если уберем метод c `Parent`, то попадем в `Object`. Вот такое поведение.
Но если сделаем два наследника `Parent` (второй скрин), то Java не разберется куда наш бедный `null` передать. Такие дела.
![](photo_2022-05-15%2013.13.12.jpeg)
![](photo_2022-05-15%2013.13.21.jpeg)