回答編集履歴
1
誤記修正、追記
test
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
> By eliminating these rules, we permit arbitrary static member declarations within inner classes.
|
8
8
|
|
9
9
|
|
10
|
-
実際、私の手もとにあるJDK 23で試すと、--releaseオプションでJavaSE 15向けにコンパイルするとコンパイルエラーで、16向けにコンパイルするとコンパイル成功、です。
|
10
|
+
実際、私の手もとにあるJDK 23で試すと、"--release"オプションでJavaSE 15向けにコンパイルするとコンパイルエラーで、16向けにコンパイルするとコンパイル成功、です。
|
11
11
|
```PowerShell
|
12
12
|
PS > javac -version
|
13
13
|
javac 23.0.1
|
@@ -29,4 +29,4 @@
|
|
29
29
|
```
|
30
30
|
要は、「**JavaSE 16からインナークラス(クラス内部に宣言する非staticなクラス)は、staticメンバを持つことができるようになった**」と言うことですね。
|
31
31
|
|
32
|
-
参考まで私がどう調べたかと言うと、"-release"オプションで8からはじめてコンパイル成功するまで試し、「Can JavaSE 16 declare static variable in inn
|
32
|
+
参考まで私がどう調べたかと言うと、"--release"オプションで8からはじめてコンパイル成功するまで試し、「Can JavaSE 16 declare static variable in inner class?」でWEB検索してヒットする記事を眺め、Stackoverflowの質問回答中にJavaSE 16にて解除された旨の回答コメントを見かけたので、公式の情報でウラを取る為にOracleのリファレンスにあたりました。
|