摘要: java程序运行时的内存空间,按照虚拟机规范有下面几项:(1)程序计数器 指示下条命令执行地址。当然是线程私有,不然线程怎么能并行的起来。 不重要,占内存很小,忽略不计。(2)方法区 这个名字很让我迷惑。这里面装的其实是程序运行需要的类文件,常量,静态变量等。作用容易明白。 程序运行时,执行代码先得装入内存,当然java好像是在第一次用到时才加载,这样可以避免装入无用的类,节省内存。 在HosSpot上,方法区现今和永久代是同一个区域。我就这么理解了,虽然作者解释说其实这两者根本不是同一个概念。 概念暂时不大关心,垃圾回收是实实在在工作中用到的。(3)本地方法栈 存储... 阅读全文