interface A
{
int a = 10;
}
interface B
{
int a = 10;
}
class Access implements A, B
{
}
class Demo
{
public static void main(String args[])
{
Access ac = new Access();
System.out.println(ac.a); // line #1
}
}
第1行引起歧义。我该如何删除它?不可能有不同接口的相同变量名吗?
答案 0 :(得分:2)
System.out.println( ((A)ac).a);
or
System.out.println( ((B)ac).a);
如果您的变量存在冲突,则需要使用分辨率来访问特定接口的值。
答案 1 :(得分:2)
您必须分别将两个变量引用为A.a
和B.a
;