开发者社区> 问答> 正文

JAVA中方法内部类中为什么不能有静态成员呢?

已解决

JAVA中方法内部类中为什么不能有静态成员呢?

展开
收起
游客gaiketk6mpmke 2022-04-02 14:59:28 639 0
1 条回答
写回答
取消 提交回答
  • 推荐回答

    由于static类型的属性和方法,在类加载的时候就会存在于内存中。

    因此要想使用某个类的static属性和方法,那么这个类必须要先加载到虚拟机中。但是,普通的方法内部类并不会随外部类一起加载,只有在实例化外部类之后才会加载。

    因此,如果在外部类并没有实例化,内部类还没有载的时候,直接调用内部类的静态成员或方法,这明显是矛盾的。

    所以普通的方法内部类不能有静态成员变量或静态方法。

    2022-04-02 16:11:39
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载