Полиморфизм Java, создающий объект подкласса, используя его переменную суперкласса
Итак, я студент и в процессе изучения Java. Есть одна концепция, которую мне трудно понять, и я надеюсь, что кто-то может пролить свет на это для меня. Мой вопрос касается полиморфизма. Скажем, например, у меня есть следующий код.
Animal a = new Lizard("Lizzy", 6); //Lizard extends Animal
Из того, что я понимаю, поскольку тип переменной - Animal, a будет иметь все характеристики Animal. Но, поскольку созданный объект является Lizard, любые переопределенные методы в классе Lizard будут использоваться вместо методов в классе Animal. Это правильно>
Кроме того, какой конструктор классов будет использоваться при создании?
Спасибо за любую помощь. Я выглядел довольно