为什么我在静态内部类里声明静态成员,javac编译时不报错??

img

普通内部类不可以声明静态成员,你是使用什么工具?编译一下试试。

img

这本书的这句话不是很严谨 静态变量是可以在内部类声明的 就算它不是静态内部类 我的Java为JDK8

class A{
    class B{
        static final int a = 0;
    }
    {
        System.out.println(B.a);
    }
}
class D{
    public static void main(String[] args) {
        new A();
    }
}