In the example below (from my coursepack), we want to give to the Square instance c1 the reference of some other object p1, but only i
Square
c1
p1
If c1 is declared as a type of Square then casting is required. If it is a declared as an Object then casting is not needed.
Object