Java虚拟机JVM的作用:
Java源文件(.java)通过编译器编译成.class文件,.class文件通过JVM中的解释器解释成特定机器上的机器代码,从而实现Java语言的跨平台。
JVM的体系结构包含三个主要的子系统和一个内存区,分别是:
- 垃圾回收器:用于回收堆(heap)中无引用的对象。
- 类装载子系统:定位及导入二进制class文件,校验被导入类的正确性,为类变量分配初始化内存,以及帮助解析符号引用。
- 执行引擎:执行被转载类中的方法指令。
- 运行时数据区:又叫做虚拟机内存或Java内存。其中又分为多个小区,包括:
- 程序计数器
- 栈
- 堆
- 本地方法区
- 方法区