如果我们执行以下代码,输出为 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,接口(interface)变量是 public static final。但我如何获得 10 作为输出?
最佳答案
这段代码可以正常工作。
您的 XTest 类实现了 XX,因此它从该接口(interface)中的 public static final 实例获取 abc
的值。
XX 隐藏 X,因此它取代了 X 的 abc
值。
关于Java接口(interface)查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3488826/