java - 我们可以从空引用访问静态成员吗​​?如果是,为什么允许这样做?

标签 java reference static null

我们可以从 Java 中的空引用访问静态成员吗​​?如果是,为什么允许这样做?它的内部是如何运作的?

最佳答案

是的; “Java 允许通过空引用访问静态字段”。

原因:

在Java中,不需要对象实例来解析静态字段。 对静态字段的访问由 getstatic 指令处理,并且不需要对象实例。它使用运行时常量池来解析字段。

引用文献:

https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-6.html#jvms-6.5.getstatic

https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-5.html

关于java - 我们可以从空引用访问静态成员吗​​?如果是,为什么允许这样做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52659360/

相关文章:

java - 用于 eclipse 的 sysdeo tomcat 插件是否为 helios 增加了值(value)?

java - NDK : Does GetByteArrayElements copy data from Java to C++?

c++ - 为什么使用一个构造函数初始化引用成功但另一个构造函数失败

SQL - 比较来自两个表的字符串(模糊匹配......排序)

java - 如何为子类提供静态字段?

c - 对具有外部链接的内联函数中的静态对象的引用

java - Spring MVC 堆栈溢出错误 - 尝试从数据库获取数据

java - java中的日期比较(字符串和日期)

reference - 动态 DNS 引用

java - 如何创建一个由用户输入定义长度的静态数组?