gpt4 book ai didi

java - 引用类型和对象类型改变 Java

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:21:41 24 4
gpt4 key购买 nike

给定:

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的引用类型是什么,它引用的对象是什么类型?

一个。引用类型为 Z;对象类型为 Z。

B.引用类型为 Y;对象类型为 Y。

C.引用类型为 Z;对象类型为 Y。

D.引用类型为 X;对象类型为 Z。

在这种情况下,我知道对象类型肯定是 Y,因为我可以使用 .getClass() 方法对其进行测试。但我不确定如何检查引用类型是什么。我假设它是 Z,但该假设是基于直觉而不是逻辑。

谁能详细说明引用类型可能是什么以及为什么?

谢谢。

最佳答案

对象引用的类型在其声明时静态定义:

Z myZ = ...

因此,引用的类型是Z,所以“C”应该是正确答案。

关于java - 引用类型和对象类型改变 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13973887/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com