如果在这里看到这个问题: Instance initializer and *this* keyword
现在我问自己是这样的:
public class Main {
public static void main(String args[]) {
new Main();
}
{ System.out.println(x); } //Error here
int x=1;
}
任何(甚至是理论上的)使用?我的意思是这一部分:
{ System.out.println(x); } //Error here
至于我可以说它的匿名因此我不知道如何手动执行它,它似乎不会自动执行不是任何功能的一部分或任何。很抱歉,如果这个问题已经得到解答,但我发现的问题是{}限制变量范围,但在这种情况下,我想不出进入该范围或让它运行的方法。
答案 0 :(得分:1)
这是一个实例初始化块。无论何时创建类的实例,它都会在您使用的构造函数的主体之前执行。
因此execute it manually
的唯一方法是创建一个出现该块的类的实例(或该类的子类)。