黑马程序员技术交流社区

标题: 这道题有点纠结,求大神指点一下 [打印本页]

作者: 许慎誉    时间: 2015-2-8 23:06
标题: 这道题有点纠结,求大神指点一下
public interface Face{   
int counter = 40;     
}      
public class Test implements Face{   
private static int counter;    //count=0?
public static void main(String[]args){
      System.out.println(++counter);         
}     
}   Test.java 的编译运行结果是(D )。  
A.        40  
B.        41  
C.        0  
D.        1
接口里的成员变量默认的不是final吗  为什么又被重新定义呢 是我理解错了吗
作者: ㏒假™面具    时间: 2015-2-8 23:16
本帖最后由 ㏒假™面具 于 2015-2-8 23:18 编辑

Test类中定义的private static int counter 是成员变量,默认初始值为0;主函数使用时用的是子类的counter

作者: Julie    时间: 2015-2-8 23:50
子类可以覆盖父类中的final的成员变量!
作者: 不要低调    时间: 2015-2-9 00:43
子类覆盖父类,调用的时候就近原则
作者: wf111sxwf    时间: 2015-2-9 10:32
你本类中有一个counter 那么运行时就打印你这个counter  子类中的counter默认初始化为0,那么 打印++counter
必然是1  想打印接口中的全局常量 super.counter




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2