JDK
JDK(Java Development Kit)是用于支持Java程序开发的最小环境,是 Java 语言的软件开发工具包(SDK),包含: Java程序设计语言,Java虚拟机,Java类库。
主要工作是进行编译,生成 .class 文件(通过javac xx.java 将.java文件 变成 .class文件)
JRE
JRE (Java Runtime Environment)是Java程序运行的标准环境,包含:Java类库API中的Java SE API子集和 JVM。
与JDK不同,它不包含开发工具—-编译器、调试器和其它工具,只能运行.class文件,不能编译。
JVM
JVM (Java Virtual Machine) —— Java虚拟机,是运行 Java 字节码的虚拟机,是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
JVM运行在操作系统之上,其内部做了不同操作系统之间的适配(windows、mac、linux)
字节码和不同系统的 JVM 实现是 Java 语言 “ 一次编译,随处可以运行 ” 的关键所在。
JDK、JRE、JVM之间的关系:
JDK包含JRE,JRE包含JVM