Java运行时的数据区包括:(其中前两个是线程共享的)
1.方法区(Method Area)存储已被虚拟机加载的类信息、常量、静态变量、即编译器编译后的代码等数据
2.堆(Heap)存放对象实例,几乎所有对象实例都在这里分配内存
3.虚拟机栈(VM Stack)描述的是Java方法执行的内存模型:每个方法在执行的同时会创建一个Stack Frame(方法运行时的基础数据结构)用于存储局部变量表、操作数栈、动态连接、方法出口等信息
4.本地方法栈(Native Method Stack)与虚拟机类似,不过则为虚拟机使用的到Native方法服务。(有的虚拟机如SunHotSpot会把本地方法栈个虚拟机合二为一)
5.程序计数器(Program Counter Register)可看作当前线程所执行的字节码的行号的标识器
ex:方法通常存储在进程中的哪一区()
A.堆区
B.栈区
C.全局区
D.方法区
显然选择D