Java 应用程序的运行机制
计算机高级语言的类型主要有编译型和解释型两种,而 Java 语言是两种类型的结合。
Java 首先利用文本编辑器编写 Java 源程序,源文件的后缀名为.java;再利用编译器
(javac)将源程序编译成字节码文件,字节码文件的后缀名为.class; 最后利用虚拟机(解
释器,java)解释执行。

JVM 、JRE 和 和 JDK
JVM(Java Virtual Machine)就是一个虚拟的用于执行 bytecode 字节码的”虚拟计算机”。
它也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。JVM 负责将 Java 字节码
解释运行,边解释边运行,这样,速度就会受到一定的影响。
不同的操作系统有不同的虚拟机。Java 虚拟机机制屏蔽了底层运行平台的差别,实现
了“一次编写,随处运行(Write once, run everywhere)”。 Java 虚拟机是实现跨平台的核心机
制。

JRE (Java Runtime Environment) 包含:Java 虚拟机、库函数、运行 Java 应用程序所
必须的文件。
JDK (Java Development Kit) 包含:包含 JRE,以及增加编译器和调试器等用于程序开
发的文件。
JDK、JRE 和 JVM 的关系如图

老鸟建议
如果只是要运行 Java 程序,只需要 JRE 就可以。JRE 通常非常小,其中包含了 JVM。
如果要开发 Java 程序,就需要安装 JDK。