本帖最后由 Mr_Maty 于 2017-2-23 12:09 编辑
class Test3
{
static int i = 1;
static
{
++i;
}
public static void main(String[] args)
{
System.out.println("Test3在进入main函数的时候i的值为:"+i); //注意这里,i在经历了两次静态代码块的作用之后i值得已经变成了3
System.out.println(increment(i,5));//这里是i=i+5吗,为什么输出是 5? 这里你强行将i = 3改变成了i = 5,输出结果当然是5了
display(i); //这里的i是Test3中的i,当然是么有改变了,increment(i,5)中的i只是复制了Test3中i的值
}
private static void display(int n)
{
System.out.println(n);
}
private static int increment(int n, int m) {
return n=+m;
}
static{
++i;
}
}
|