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 –