これはジャバです。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;。