本文介绍 jre 和 jdk 有什么关系,jvm 又是什么。弄明白我们写的 xxx.java 源文件是被谁编译、被谁执行,为什么能够跨平台运行。
- JDK :英文名称(Java Development Kit),Java 开发工具包,是针对 Java 开发员的产品。jdk 是整个 Java 开发的核心,包括了Java运行环境JRE(Java Runtime Envirnment)、一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。
- JRE :英文名称(Java Runtime Environment),指 Java 运行环境。它主要包含两个部分,JVM 的标准实现和 Java 的一些基本类库。它相对于 JVM 来说,多出来的是一部分的 Java 类库。
- JVM :英文名称(Java Virtual Machine),就是 Java 虚拟机,是 Java 能够跨平台的核心。所有的 Java 程序会首先被编译为 .class 的类文件,这种类文件可以在虚拟机上执行。
三者的关系是:JDK>JRE>JVM。 没有 JRE,Java 程序无法运行;而没有 Java 程序,JRE 就没有用武之地。