в java. Вот к примеру у меня есть супер-класс A в котором есть метод show и есть подкласс B где этот метод переопределен. Я могу написать вот так A a = new B(); a.show() и будет вызван метод переопределенный в подклассе B. Но какой вообще в этом смысел, почему просто не создать обьект класса B и не вызвать у него этот метод. Или в этом случае это не будет считаться полиморфизмом ?
А если вдруг у тебя будет метод, который работает с объектами и А, и B?
Получая экземпляр объекта, ты не всегда хочешь или даже можешь знать, какой конкретно подтип будет ему соответствовать
Получая объект через DI для смены реализации интерфейса достаточно будет поменять одно место а не 500
Обсуждают сегодня