我读了JVM内存模型,并对以下内容感到困惑:
我真的很感激有关该主题的任何帮助。
感谢。
答案 0 :(得分:8)
1).class
文件将在加载时存储在permgen内存区域中。
2)HEAP上的对象将在程序运行时创建,当您明确创建时,而不是加载时。 JVM编译方法'懒惰',即它发出小的存根来代替方法的编译机器代码,这将触发每个方法的编译。这意味着永远不会编译未使用的方法。
3)perm gen存储字节代码(将加载.class文件),不确定机器级代码。
答案 1 :(得分:2)
JVM是否将.class实例存储在其内存中。如果是,则在哪个区域
PermGen的
一旦加载了类就好了吗
您可以在不阅读.class
,JVM生成机器级代码,然后开始执行机器代码指令
字节代码在一段时间后被解释或可能编译为本机代码。
perm gen等区域存储字节代码或机器级代码?
两者。它们是不可分割的。