日期:2014-05-20  浏览次数:20684 次

java初始化的小问题
下面两个代码(《java编程思想》P93)
代码一:public class MethodInit2{
  int i=f();
  int j=g(i);

int f(){
return 11;
}

int g(int n){
return n*10;
}
}
代码二:public class MethodInit2{
  int j=g(i);
  int i=f();

int f(){
return 11;
}

int g(int n){
return n*10;
}
}
书上说代码二有误。对于代码二我陷入了困惑:①创建该类对象时,是不是先将i和j初始化为默认值(即将i和j初始化为默认

值0),然后执行这两条语句(int j=g(i);int i=f();)的赋值运算,这样的话代码就无误了吧....②创建该类对象是将I初

始化为默认值0后,紧接着执行语句int j=g(i)的赋值运算,这样的话代码就是错误的(因为i还没来得及初始化)...


小弟迷茫了。求拯救!!!

------解决方案--------------------
i还没有赋值呢