Ability of an object to take many forms. Commonly occurs when a parent class reference is used to refer to a child class object

Typecasting

instanceof

is very useful to check if a typecast was successful