なぜリソースを変更することはできませんリソースを試してみてください

e2rabi:

私は私がnull参照スキャンの値を設定しようとすると、コンパイルされないリソースの例で試してました

try(Scanner scan = new Scanner(System.in)) {
    String s = scan.nextLine();
    System.out.println(s);
    scan = null;
}

私はこのコンパイル・エラーの背後にあるルール何聞いて、私はネット上でいくつかの検索をしましたが、私はそれを任意の説明をありがとうを説明するルールを見つけられませんでした。=)

アンドリューTobilko:

それはデザインによってです。あなたは、再割り当てすることはできませんfinal変数を。

14.20.3。トライして、リソース

変数は、リソース仕様で宣言されている暗黙的に宣言final、それが明示的に宣言されていない場合final(§4.12.4)。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=318118&siteId=1