如果我们执行运行以下代码,则输出为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);
}
}
Run Code Online (Sandbox Code Playgroud)
但是根据Java,接口变量是public static final.但我如何得到10作为输出?
此代码可以正常工作.
你XTEST类实现XX,因此它的价值abc
从公共静态终审该接口.
XX阴影X,所以它取代了abc
X 的值.