4.5.2 Variables of Reference Type
A variable of reference type can hold either of the following:
A null reference
A reference to any object
(§4.3)
whose class
(§4.5.5)
is assignment compatible
(§5.2)
with the type of the variable