JDK JRE JVM三者之间的关系

  JAVA程序必须进行编译,实际上任何编程语言都需要一个切实有用的编译器。编译器是一种将程序源代码转换成可执行格式(可以是字节码,本机代码或者其他代码)的程序。在开始java编程之前,需要先下载一个java编译器,它是一个名为javac的程序,这个名称是JAVA compiler的缩写。

  虽然javac可以把Java源代码编译成字节码,但是要运行字节码还需要一个Java虚拟机,此外,由于总是会用到Java核心库中的类,因此还需要下载这些库,Java运行环境(Java Runtime Environment,JRE)包含JVM和类库。正如你猜想的,Windows的JRE和Linux的JRE不同,而Linux的JRE又不同于其他操作系统的JRE。

  Java软件有两个发行包:

  JRE,它包括JVM和核心库,适用于运行字节码。

  JDK,它包括JRE再加上一个编译器和其他工具,它是编写和编译Java程序所必需的。

  总而言之,JVM是一个运行字节码的本机应用程序,JRE是一个包含JVM和Java类库的环境,JDK包含JRE和Java编译器以及其他工具。

 

你可能感兴趣的:(java,JDK,JRE,JVM)