什么是JVM

JVM全称是Java Virtual Machine,中文译名Java虚拟机。

初识JVM​-JVM基础概念_Java



JVM的功能

01解释和运行

对字节码文件中的指令,实时的解释成机器码,让计算机执行

02内存管理

  • 自动为对象、方法等分配内存
  • 自动的垃圾回收机制,回收不再使用的对象

03即时编译

对热点代码进行优化,提升执行效率

Java语言如果不做任何优化,性能不如C、C++等语言。Java需要实时解释,主要是为了支持跨平台特性。

初识JVM​-JVM基础概念_JVM_02


JVM提供了即时编译(Just-In-Time简称JIT)进行性能的优化,最终能达到接近C、C++语言的运行性能甚至在特定场景下实现超越。

初识JVM​-JVM基础概念_字节码_03



常见的JVM

初识JVM​-JVM基础概念_JVM_04



  • 《Java虚拟机规范》由Oracle制定,内容主要包含了Java虚拟机在设计和实现时需要遵守的规范,主要包含class字节码文件的定义、类和接口的加载和初始化、指令集等内容。
  • 《Java虚拟机规范》是对虚拟机设计的要求,而不是对Java设计的要求,也就是说虚拟机可以运行在其他的语言比如Groovy、Scala生成的class字节码文件之上。
  • 官网地址:https://docs.oracle.com/javase/specs/index.html


常见的JVM-HotSpot的发展历程

初识JVM​-JVM基础概念_JVM_05



小结

1、JVM到底是什么?

JVM全称是Java Virtual Machine,中文译名Java虚拟机,是一个运行在计算机上的程序,他的职责是运行Java字节码文件。

2、JVM的三大核心功能是什么?

JVM包含内存管理、解释执行虚拟机指令、即时编译三大功能。

3、常见的JVM虚拟机有哪些?

常见的JVM有HotSpot、GraalVM、OpenJ9等,另外DragonWell龙井JDK也提供了一款功能增强版的JVM。其中使用最广泛的是HotSpot虚拟机。