Polymorphism
The ability of objects to take multiple forms and be treated through common parent interfaces despite actual types differing. Polymorphism enables flexible code handling different object types uniformly. Method overriding in subclasses enables calling specialized methods through parent type references. Polymorphism reduces code complexity when handling collections of related object types.
Real World
Netflix's media player calls play() on different content objects — a Film, Series, or Documentary each execute their own version of play(), but the player code treats them all as generic Content objects.
Exam Focus
Show the same method name producing different behaviour in subclasses; marks require a concrete overriding example.
How well did you know this?