Полиморфизм (информатика)
способность функции обрабатывать данные разных типов / Материал из Википедии — свободной encyclopedia
Уважаемый Wikiwand AI, давайте упростим задачу, просто ответив на эти ключевые вопросы:
Перечислите основные факты и статистические данные о Полиморфизм (информатика)?
Кратко изложите эту статью для 10-летнего ребёнка
Полиморфизм в языках программирования и теории типов — способность функции обрабатывать данные разных типов[1][2][3].
Существует несколько разновидностей полиморфизма. Две принципиально различных из них были описаны Кристофером Стрэчи[англ.] в 1967 году: это параметрический полиморфизм[⇨] и ad-hoc-полиморфизм[⇨], прочие формы являются их подвидами или сочетаниями. Параметрический полиморфизм является истинным, т.к. подразумевает исполнение одного и того же кода для всех допустимых типов аргументов, а ad-hoc-полиморфизм — мнимым, т.к. представляет собой обеспечение косметической однородности потенциально разного исполнимого кода для каждого конкретного типа аргумента[1][4]. При этом существуют ситуации, где необходимо использование именно ad-hoc-полиморфизма, а не параметрического[5]. Теория квалифицированных типов объединяет все виды полиморфизма в единую модель.
Широко распространено определение полиморфизма, приписываемое Бьёрну Страуструпу: «один интерфейс (как перечень объявлений) — много реализаций (определений, связываемых с этими объявлениями)»[6], но под это определение подпадает лишь ad-hoc-полиморфизм (мнимый полиморфизм).