これはジャバです。1 の代入は、クラスがインスタンス化されたときに最初に実行index
されることを理解していますが、なぜこれが有効なのですか?initialization block
public class arr {
{
index = 1;
}
int index;
void go() {
System.out.println(++index);
}
public static void main(String [] args){
new arr().go();
}
}
出力は 2 です。
symbol not found
コンパイルエラーが発生するはずです。この動作は初期化ブロック固有のものですか? 通常のシナリオでは、のint index;
前に来る必要がありますindex = 1;
。