Java - 类的内存分配

时间:2010-03-21 06:31:39

标签: java

存储在内存中的类的定义在哪里?

1 个答案:

答案 0 :(得分:1)

这取决于您所谈论的Java

  

运行时数据的内存布局   区域,垃圾收集   使用的算法,以及任何内部   优化Java虚拟   机器说明(例如,   将它们翻译成机器代码)   由...决定   实施者“。

请参阅JVM spec

也就是说,Sun Java有一段称为permanent generation的内存,其中包含类定义。由于其最初的意图(对于大多数静态类来说是一个相对较小的区域),永久代并不总是适合目标JVM的动态语言。请参阅JRuby问题的this discussion。这是Da Vinci Machine project动机的一部分,旨在改善VM对这些语言的支持。