interfaceA{int x = 0;}class B{int x =1;}class C extends B implements A {public void px(){
System.out.println(x);}public static void main(String[] args) { new C.px();
} 请问这段代码有错吗? 错在什么地方? 如何改正
System.out.println(x);}public static void main(String[] args) { new C.px();
} 请问这段代码有错吗? 错在什么地方? 如何改正
接口中只能定义final类型变量class C extends B implements A
B,A中变量冲突,这样编译器应该会报错
中调用的x不明确,如果你调用A接口中的x应该是这样的A.x。其他没问题的
不管你使用不适用final都默认你的变量时final型的
所以与继承的int x = 0;冲突,应该编译就报错啦!
接口可以定义任何变量,但必须赋初值
lz看来还不是怎么会用接口和类
或者说
对java还没有个全面和初步的认识吧