JVM:虚拟机。
一、思维导图之JVM
二、几点说明
2.1、JVM支持的语言
JVM起初源于Java语言生态,彼时JVM只用于支持Java语言,随着演化,JVM支持越来越多的语言,比如“Scala”,“Groovy”,“Kotlin”等,这些语言可被统称为JVM语言,从而形成如下3层结构关系(借助于“字节码”这个中间层,JVM作为JVM语言的通用基础设施层):
1 | Java Scala Groovy Kotlin |
2.2、JVM规范和实现
讨论JVM时,需要区分“JVM规范”和“JVM实现”:
- JVM规范,参见链接中的“The Java Virtual Machine Specification”
- JVM实现,比如有“HotSpot”,“JRockit”和“IBM J9”等,一般指“HotSpot”
对于介绍JVM的本系列博文,基于64位的JDK 8(其虚拟机实现是HotSpot),除非作特别说明。一个明确的JDK版本,明确了所遵循的JVM规范且是一个具体的JVM实现,比如“64位的JDK 1.8.0_301遵循JVM规范——《The Java Virtual Machine Specification-Java SE 8 Edition》,它是一个具体的JVM实现”,“64位的JDK 1.8.0_312遵循JVM规范——《The Java Virtual Machine Specification-Java SE 8 Edition》,它是一个具体的实现”。