我的代码:A.java
package pack1;
public class A {
final static int x;
}
用于编译代码的命令:
javac -d . A.java
编译时错误:
A.java:5: error: variable x not initialized **in the default constructor**
final static int x;
^
1 error
现在,这里的编译器应该抛出像 => 这样的错误
error: variable x not initialized **in the static block**
因为在这种情况下,您可以初始化的可能位置,声明的最终静态未初始化变量仅 => 1)在声明本身时或 2)在静态块内
图片中没有构造函数......编译器仍然抛出错误,这是误导性的。
我正在使用 jdk 1.8
java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)