Разница между наследованием и полиморфизмом
Я учился о полиморфизме. Я не могу определить аналогию в Java относительно этих двух функций.
Скажем такAnimal
класс является конкретным суперклассом сCat
а такжеDog
как его подклассы. Я знаю, что это случай наследования. Но это не такCat
а такжеDog
классы, полиморфыAnimal
учебный класс?
Я хорошо знаю интерфейсы в Java. Я не мог понять, почему интерфейсы используются вместо конкретных классов для объяснения полиморфизма. Может быть, вся цель создания интерфейса - это создание полиморфов, но я хочу знать, почему интерфейсы, а не конкретные классы?