. Dit is iets moeilijker te verklaren in niet programmering terminologie. Echter, zullen wij onze verbeelding een beetje te rekken en zeggen dat polymorfisme is enigszins verwant aan de automatische transmissie in uw auto. In mijn Honda, bijvoorbeeld de automatische transmissie heeft vier verschillende werkwijzen
functie
gezamenlijk bekend als Aandrijving
(naast de functies van omkeren of
, Park
en Neutral
).
Als een exploitant van de auto, ik gewoon kies Drive
(betekenis vooruit te gaan).
Afhankelijk van verschillende omstandigheden op runtime
de automatische transmissiesysteem bepaalt welke versie van de Aandrijving
functie te gebruiken in elke specifieke situatie. De specifieke uitvoering van de functie die wordt toegepast is gebaseerd op de huidige omstandigheden. Dit is enigszins vergelijkbaar met wat we later zullen noemen runtime polymorfisme
Ik denk ook dat het waar is dat mijn Honda heeft slechts één methode
die wij verwijzen. Reverse
. Zodra ik kies Reverse
, dat één methode wordt gebruikt.
Er is geen automatische selectie tussen meerdere achteruit
methoden. Daarom, mijn Honda vertoont polymorfe gedrag wanneer gaan in de voorwaartse richting, maar vertoont niet-polymorfe gedrag wanneer achteruit gaan.