一道关于引用接口中的变量的题

来源:百度知道 编辑:UC知道 时间:2024/06/23 08:48:26
interface In{
int k=0;
}

public class Test implements In{
public static void mian(String args[]){{
int i;
Test test=new Test();
i=test.k;
i=Test.k;
i=In.k;
}
}

最后程序会报错 问哪一行报错?
请同时说明为什么会报错?

的确都是对的。
i=test.k;
i=Test.k;
i=In.k;
这三个调用都是正确的。
如楼上所说,接口中的变量类型都是默认的public static final,所以即可用实现类的对象调用,也可直接用类名调用。
唯一错的是main()写错了。

i=test.k;不会报错。

i=Test.k;
i=In.k;
都会报错。

请楼下的指正!

接口里面的变量
默认类型是
public static ....;

所以都是对的