JVM:就是java virtual machine(Java虚拟机)的意识。是整个 Java 实现跨平台的最核心的部分,能够运行以 Java 语言写作的软件程序。通常说Java是跨平台语言,就是说每个操作系统都有自己的Java虚拟机。我们编写的 Java 源码,编译后会生成一种 .class 文件,称为字节码文件。Java 虚拟机(JVM)就是负责将字节码文件翻译成特定平台下的机器码然后运行,也就是说,只要在不同平台上安装对应的 JVM,就可以运行字节码文件,运行我们编写的 Java 程序。
JRE(Java Runtime Environment,Java 运行环境)是运行 JAVA 程序所必须的环境的集合,包含 JVM 标准实现及 Java 核心类库。也就是说JRE知识Java的运行环境,如果对于程序开发人员必须要具备编译环境,但是JRE是不具备编译环境,只能运行Java程序。
JDK(Java Development Kid,Java 开发开源工具包),是针对 Java 开发人员的产品,是整个 Java 的核心,包括了 Java 运行环境 JRE、Java 工具和 Java 基础类库。也就是说,JDK包含了编译器,程序开发人员必须安装的就是JDK。