interface My{
int x = 10;
}
class Temp implements My{
int x = 20;
public static void main(String[] s){
System.out.println(new Temp().x);
}
}
这会将结果打印为 20。有什么方法可以访问属于类中接口的 x 吗?
interface My{
int x = 10;
}
class Temp implements My{
int x = 20;
public static void main(String[] s){
System.out.println(new Temp().x);
}
}
这会将结果打印为 20。有什么方法可以访问属于类中接口的 x 吗?
您需要对接口类型进行显式转换:
System.out.println(((My)new Temp()).x);
但是请注意,x
它不绑定到My
. 接口字段是隐式的static
和final
(更多的常量),这意味着上面可以使用:
System.out.println(My.x);
您可以随时使用它。
interface My {
int x = 10;
}
class Temp implements My {
int x = 20;
public static void main(String[] s) {
System.out.println(new Temp().x); // 20
System.out.println(My.x); // 10
}
}
an 的字段Interface
总是static.