JVM(Java Virtual Machine)
virtual 英 [ˈvɜːtʃuəl] 美 [ˈvɜːrtʃuəl]
adj.很接近的;几乎…的;事实上的;实际上的;实质上的;(通过计算机软件,如在互联网上)模拟的,虚拟的
machine 英 [məˈʃiːn] 美 [məˈʃiːn]
n.机器;机械装置;(不提全称时的简略说法)机器;(组织的)核心机构
v.(用机器)制造,加工成型
JVM即Java虚拟机。顾名思义,就是一个虚拟的计算机。我们知道java具有跨平台的特点,JVM的作用就是实现跨平台。我们写的源代码是不能直接被直接运行的,java格式的源代码会先被编译器编译成class格式,这种文件被称为字节码文件,相当于一个中间文件。接着不同平台的JVM执行字节码文件,就可以在不同的平台跑java程序了。
JRE(Java Runtime Environment)
environment 英 [ɪnˈvaɪrənmənt] 美 [ɪnˈvaɪrənmənt]
n.(影响个体或事物行为或发展的)环境;客观环境;自然环境;生态环境;(运行)环境;工作平台;软件包
JRE即Java运行环境。它包括Java虚拟机、Java核心类库和支持文件。它是运行java程序所必须的环境的集合,简单的来说,想要运行一个java程序必须得有它。
JDK(Java Development Kit)
development 英 [dɪˈveləpmənt] 美 [dɪˈveləpmənt]
n.发展;发育;成长;壮大;开发;研制;研制成果;(新的)发展事态,进展情况,发展阶段
kit 英 [kɪt] 美 [kɪt]
n.配套元件;成套工具;成套设备;全套衣服及装备 v.装备
JDK即Java开发工具包,它包括JRE和编译运行工具。说到这里,相信大家就能明白这三者的关系了:JVM⊆JRE⊆JDK
单单这么说可能还是不够清楚,现在让我们打开JDK,看看里面到底有什么。
以这个版本的JDK为例,打开我们就能看到一个名为jre的文件夹,让我们继续打开jre文件夹
jre文件夹下有一个bin文件夹和一个lib文件夹,bin里的就是jvm,lib里的是jvm工作所需要的类库。