一尘不染

内部类为什么不能声明静态成员?

java

Java教程说,由于内部类与封闭类的实例相关联,所以它(内部类)本身不能定义任何静态成员。

对我来说很有趣,为什么内部类不能声明静态成员,例如某个private static字段,该内部类的实例可能会与同一内部类的其他实例共享这些成员?这仅仅是Java中必须被视为理所当然的事情的实现吗?


阅读 245

收藏
2020-12-03

共1个答案

一尘不染

基本上只是一个任意决定。我们没有理由也 不可能 得到支持,但还算不上什么好的理由 支持它。只需在外部类中声明静态字段即可。

同样,该引用可能并不完全正确:我相信您可以在内部类中声明一个静态serialVersionUID。

2020-12-03