本文重点
在前面的课程中,我们介绍了java中的三层JDK->JRE->JVM,其中JVM称为Java的虚拟机,只是用来执行的,JRE是运行环境,要想在操作系统中运行,除了JVM还需要类库,JDK=JRE+开发的包和工具。本文就将介绍一下JVM究竟为何物?
JVM
有的人会认为JVM是java中的东西,这种说法其实不是很正确,因为JVM不是java才可以用,其它语言也可以使用JVM。
我们可以把JVM理解为一种class规范,也就是说任何语言只要能够编译成class规范,那么JVM就可以执行这个语言。
JVM可以理解为一台虚拟的计算机,它有自己的字节码指令(汇编语言)以及内存管理(堆、栈、方法区等)。
常见的JVM实现
要想实现JVM,必须满足相对应的规范,所以现在有非常多的JVM,我们常用的是oracle官方给定的JVM,如下所示本机使用是官方的HotSpot,然后mixed mode表示既可以编译又可以解释
除了HotSpot之外,还有其它的一些JVM,如下所示:
Jrockit,世界上最快的JVM