JVM内存模型和Java内存模型都是大厂面试的热点问题,名字看感觉都差不多,实际上他们之间差别还是挺大的。
通俗点说,JVM内存模型是与JVM的内部存储结构相关,而Java内存模型是与多线程并发编程相关@mikechen
今天主要讲解JVM内存模型相关的8点内容:
-
为什么需要JVM?
-
JVM内存模型
-
堆(Heap)
-
方法区(Method Area)
-
虚拟机栈(JVM Stack)
-
本地方法栈(Native Stack)
-
程序计数器(PC Register)
-
JVM内存模型小结
为什么需要JVM?
JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一个虚构出来的计算机,有着自己完善的硬件架构,如处理器、堆栈等。
Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。
Java文件必须先通过一个叫javac的编译器,将代码编译成class文件,然