三、 代码查错
Interface A {
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();
}
}
Interface A {
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();
}
}
解决方案 »
- unable to install breakpoint in......不能击中断点
- 请高手指教一个Java Swing的问题.
- 请高手指教
- 请问 一个BigInteger类型的数据如何自加1,翻了N遍手册和几十个Google结果,都没找到,希望高手能帮我解除新手之痛,举手之劳,帮我解决,十分感谢 !
- 向上转型,向下转型发现的小问题
- ant的一个问题
- 中文Java网站之我见
- 此错误是怎么回事???
- 一个关于JSP调用JSwing问题!
- 想成为java高手必须读jdk源代码吗?
- jframe和frame的区别
- JOptionPane.class.getField(s).getInt(null);是什么意思?
int x = 0;
} interface只能定义静态变量。
interface A {// 是interface 不是Interface
int x = 0;
}class B {// 是class 不是Class
int x = 1;
}public class C extends B implements A {
public void px() {
System.out.println(new B().x);// 指定要打印的变量,因为B和A中都有x,编译器不知道你要调哪个
// 编译器有时候很傻 } public static void main(String[] args) {
new C().px();
}
}
这个题的考点不是什么大小写的问题。使用IDE直接就能看出来,么什么好考得。
考点应该是C拥有两个x变量,冲突了。
编程的好习惯,不要在接口中定义变量。如果准许了这个习惯,问题就没有了。