首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java中静态字段和方法的所有权

Java中静态字段和方法的所有权
EN

Stack Overflow用户
提问于 2017-06-22 18:56:19
回答 1查看 103关注 0票数 0

我想问一个关于类和“机制”的问题,Java通过它将它们加载到内存中,特别是关于静态字段和方法的创建。

类可能具有静态字段和方法,这些字段和方法可以在加载时从类本身调用,而无需创建类的实例。这是怎么发生的?它背后的“机制”是什么?

我知道当JVM需要加载一个类时,它会创建一个类对象,其中包含如何创建相应类的实例的元数据。但是,当静态字段和方法也被加载时,它们是否被分配给类对象,作为回报,它为创建的每个新实例创建了一个引用??这就是为什么静态方法可以同时从类(在面向对象语言中意味着什么)以及它的每个实例调用的原因吗?无论我多么努力地搜索它,我都找不到关于事情在这件事情上是如何运作的答案。

最重要的是,有人知道为什么Java允许从实例以及“类本身”访问静态字段吗?我的意思是什么概念。

事先感谢你们大家的时间。

EN

回答 1

Stack Overflow用户

发布于 2017-06-22 19:44:31

我认为你指的是类加载和链接的概念。在这里解释得很好,jvmspec

特别是区段

5.3。创建和加载

您可能也需要查看jvm体系结构。它更好地理解了用于存储静态变量和方法等类级信息的方法区域。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44707340

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档