JDK、JRE、JVM区别
- JVM Java 虚拟机(JVM)是运⾏ Java 字节码的虚拟机。JVM 有针对不同系统的特定实现(Windows, Linux,macOS),⽬的是使⽤相同的字节码,它们都会给出相同的结果。字节码和不同系统的 JVM 实现是 Java 语⾔“⼀次编译,随处可以运⾏”的关键所在。
JVM 并不是只有⼀种!只要满⾜ JVM 规范,每个公司、组织或者个⼈都可以开发⾃⼰的专属 JVM。 也就是说我们平时接触到的 HotSpot VM 仅仅是是 JVM 规范的⼀种实现/ - JDK 是 Java Development Kit 缩写,它是功能⻬全的 Java SDK。它拥有 JRE 所拥有的⼀切,还有 编译器(javac)和⼯具(如 javadoc 和 jdb)。它能够创建和编译程序。
- JRE 是 Java 运⾏时环境。它是运⾏已编译 Java 程序所需的所有内容的集合,包括 Java 虚拟机 (JVM),Java 类库,java 命令和其他的⼀些基础构件。但是,它不能⽤于创建新程序。