在Java类的静态块中声明的非静态变量存储在哪里?从逻辑上看,它们似乎必须存储在堆中--即使它们是原始变量。这是正确的吗?如果不是,它们存放在哪里?编辑:考虑以下代码:class book static int a = 1; // Where does this variablepublic static void main (String[] args) b
在Java中,我们只将静态方法的一个副本存储到内存中,并且可以反复调用它。这是为了提高性能和节省空间。以前,有人在工作中声称Python中的静态函数的工作方式与Java中的不同,is this correct?有人还声称,每次我们调用Python静态方法时,Python解释器仍然需要先花时间实例化一个对象。Is this correct?
我最近深入研究了java。在Java 7中,“静态变量”和“静态方法”存储在“方法区域”中,但是自从Java 8之后,我在JVM规范中看到了这句话
The proposed implementation will allocateclass meta-data in native memory and move interned Strings and class statics to the Java heap --有一篇文章说静态变量,垃圾收集器不