A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李伟松 中级黑马   /  2015-3-16 22:58  /  979 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public interface Face{   
int counter = 40;     
}      
public class Test implements Face{   
private static int counter;   
public static void main(String[]args){
      System.out.println(++counter);         
}     
}

6 个回复

倒序浏览
结果是1    应该不会错了
回复 使用道具 举报
你在类中已经定义了变量,默认Int类型的初始化为0,打印的当然是你类中的变量++count 所以为1
回复 使用道具 举报
应该是1 的
回复 使用道具 举报
必须是1的了哇
回复 使用道具 举报
结果是1
回复 使用道具 举报
1.你调试过吗,你这代码有问题。首先interface中的成员变量必须是static,写public interface Face是通不过,你得写interface Face { static int counter} 。
2.private static int counter这里定义的counter跟接口中int counter = 40;   不是同一个变量,前者是实现类Test里面的,默认值为0,后者是Face接口里面,调用的方法是Face.counter;
3.++counter是先自增后赋值0自增得1,再赋值还是1 所以得出结果是1

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马