Определение - возможность использовать потомки в контексте, который был предназначен для предка.
Существует 2 типа полиморфизма:
- Ad-hoc(мнимая форма) - приведение типов данных и перегрузка методов. Исполнение разного кода для разных типов аргументов.
- Параметрический полимерфизм(истинная) - подразумевает исполнение одного и того же кода для всех допустимых типов агрументов.
"Все if в программе можно заменить на полиморфизм"
Полиморфизм простыми словами