public class Test {
static int x, y;
static {
x = 1;
y = 2;
}
public static void main(String[] args) {
x--;
myMethod();
}
public static void myMethod() {
y = x++ + ++x;
}
}
这段代码的执行结果是2,不是6,因为static里面是定义的x,y执行之后并没有改变类里面定义的x,y的值;如果这个x,y是1,2然后开始执行代码的话,结果就是6