标签: java jvm
我在某种程度上了解了JVM的内部架构。
我的问题是:JVM的运行时区域(如堆区域,堆栈区域,方法区域等)内部包含哪种代码?
这些区域是否包含字节代码或解释器转换的机器代码?
答案 0 :(得分:2)
堆栈和堆通常不包含可执行代码:字节代码和本机代码。它们仅包含数据(堆栈上的局部变量和参数,堆上的对象)。
方法区域包含JVM的内部控制结构。有关加载的类,方法等的信息。这可能包含每个方法的字节码。 可以很好地包含某些方法(或更小/更大的部分)的编译(本机)代码,这取决于JVM的优化类型。