Полиморфизам (рачунарство) — разлика између измена

== Аспекти имплементације ==
=== Статички и динамички полиморфизам ===
 
Полиморфизми се могу разликовати према томе која је имплементација изабрана - статично (у време компајлирања) или динамично (у време извршавања, обично преко виртуелне функције). Ово је познатије као статичко и динамичко спајање, а одговарајући облици полиморфизма се у складу са тим називају ''статички полиморфизам'' и ''динамички полиморфизам''.
 
 
Статички полиморфизам се извршава брже, али захтева додатну подршку компајлера. Статички полиморфизам омогућава већу статичку анализу: приликом компајлирања (посебно за оптимизацију), анализу изворног кода и анализу коју врше програмери. Динамички полиморфизам је флексибилнији, али спорији - на пример, динамички полиморфизам омогућава кодирање без експлицитно декларисаних типова ({{Јез-енг|duck typing}}), а динамички повезане библиотеке омогућавају њихово коришћење над објектима без познавања њиховог пуног садржаја.
 
 
Статички полиморфизам се обично јавља у ад-хоку и параметарском полиморфизму, док је динамички полиморфизам уобичајен за подтипизирани полиморфизам. Међутим, могуће је користити статички полиморфизам са подтипизираним полиморфизмом помоћу софистицираних употреба [[Шаблон метапрограмирања|шаблона метапрограмирања]].
 
 
== Референце ==