The type of the object is A, but ref2 does not access the version of Y() that is defined in the B class because that method is declared with the new modifier, not the override modifier. As a result, a ref2 object displays the same description as an A object.