这样写为什么不对,求大神指导
public static int sum(){
static int sum=score1+score2;
System.out.println(sum);
}
public static int sum(){
static int sum=score1+score2;
System.out.println(sum);
}
2017-11-27
public static int sum(){ static int sum=score1+score2; System.out.println(sum); return sum; }
对于java编译器来说,是这样的:
public static int sum(){ static { sum = score1 + score2; } static int sum; System.out.println(sum); return sum; }
我在这里先认为score1、score2是普通的成员变量。
static{}块 在类(new class())加载之前被编译器执行的,而static{}块中存在两个未知变量,因为score1、score2是普通的成员变量,是在类(new class())加载之后才被告知编译器的。
还是看不懂的话,可以参考:http://blog.csdn.net/darxin/article/details/5293427
举报