根据我的理解,
在
然而,当我运行下面的代码来检查它时,它显示
以上程序的输出是:
请帮我解决疑惑,因为我无法理解这种现象。
匿名类
总是 final
的:在
JLS 15.9.5
中特别提到了这一点。然而,当我运行下面的代码来检查它时,它显示
Inner
类不是 final
。 public class Test{
static class A<T> {
}
public static void main(String arg[]) {
A<Integer> obj = new A() {
};
if ((obj.getClass().getModifiers() & Modifier.FINAL) != 0) {
System.out.println("It is a final " + obj.getClass().getModifiers());
} else {
System.out.println("It is not final " + obj.getClass().getModifiers());
}
}
}
以上程序的输出是:
It is not final 0
请帮我解决疑惑,因为我无法理解这种现象。
final
的。 - Jesper