什么是JVM
- 只是一个规范,抽象的计算机
- 常见的JVM的实现:Hotspot(Oracle官方)、Jrockit、J9、TaobaoVM等等
- 我们常说的JVM就是Hotspot-JVM虚拟机
为什么Java可以在多个平台执行
- 首先明确一点:JVM跟Java没有一点关系
- JVM其实只认识class文件,如果说你自己能写一门语言且编译成class文件,那么它也能在JVM上运行了
- JVM可以安装在多个平台,所以说Java就能在多个平台执行了
JDK、JRE、JVM
JVM工作模式
模式一:解释器:编译一行代码,执行一行代码
模式二:JIT编译器:将热点代码先全部编译成本地代码,然后执行
区别:JIT编译器比解释器模式在代码运行上要快很多,但是启动的时候就要慢,因为你要将热点代码全部编译。
当前常见的JVM都是用的混合模式,解释器+JIT编译器