为什么这段Java代码用花括号({})括起来,而不是在方法内部?

19 浏览
0 Comments

为什么这段Java代码用花括号({})括起来,而不是在方法内部?

我正在为一次Java认证考试做准备,我在其中一份练习测试中看到了类似于这样的代码:

class Foo {
    int x = 1;
    public static void main(String [] args) {
        int x = 2;
        Foo f = new Foo();
        f.whatever();
    }
    { x += x; }  // <-- 这是怎么回事?
    void whatever() {
        ++x;
        System.out.println(x);
    }
}

我的问题是...在方法外使用花括号编写代码是否有效?这些代码会有什么影响(如果有的话)?

0