JDK、JRE、JVM区别
JDK(Java开发工具包):包含开发Java程序的工具群,以及Java程序的运行时环境JRE。
JRE(Java运行时环境):由JVM和各种库组成,在不同平台上JRE类型也不同,javac生成的字节码格式的类文件在任何平台上的JVM都可以运行,“一次编写,到处运行”。
JVM(Java虚拟机):运行Java程序的虚拟机,运行时会解释类文件中的命令。为了能够在环境中高速运行,类文件中的一部分命令会再次编译(将不依赖于环境的类文件置换为当前运行环境中特定的高速命令)。因此,Java程序的运行方式以边逐一解释边运行的解释器模式为基础,同时还使用直接运行机器语言的编译器模式,是一种混合模式。