我们可以从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

07-26 01:18