Polymorphism
Polymorphic is "having, assuming, or occurring in various forms, characters, or styles" (Webster New Collegiate Dictionary)
Polymorphism is "a concept in type theory, according to which a name (such as a variable declaration) may denote objects of many different classes that are related by some common superclass [type]." (Booch OOAD page 517)
Aspects of polymorphism:
- A variable can be assigned different types of objects at runtime.
- Method implementation is determined by the type of object, not the type of the declaration (dynamic binding).