public class X implements Z {
public String toString() { return "I am X"; }
public static void main(String[] args) {
Y myY = new Y();
X myX = myY;
Z myZ = myX;
System.out.println(myZ);
}
}
class Y extends X {
public String toString() { return "I am Y"; }
}
interface Z {}
什么是MYZ的引用类型,什么是它引用的对象的类型? A.参考类型为Z;对象类型为Z.
B.引用类型为Y;对象类型为Y.
C.引用类型为Z;对象类型为Y.
D.引用类型为X;对象类型是Z.
在这种情况下,我知道对象类型肯定是Y,因为我可以使用.getClass()方法对其进行测试。但我不确定如何检查参考类型是什么。我假设它是Z但这个假设是基于直觉而不是逻辑。
任何人都可以详细说明引用类型可能是什么,为什么?
谢谢。
我会去与C,对象是用新的Y()创建;并且myZ被声明为Z –