继承Java接口查询
如果执行并运行以下代码,则输出为10
interface X{
int abc = 0;
}
interface XX extends X{
int abc = 10;
}
class XTest implements XX
{
public static void main(String[] args)
{
System.out.println("Hello World! --> " +abc);
}
}
但根据Java,接口变量是公共静态final。但我如何得到10作为输出
# 1 楼答案
这段代码正常工作
XTest类实现了XX,因此它从该接口中的公共静态最终实例获取
abc
的值XX对X进行阴影处理,因此它取代了X中的
abc
值