JDK与JRE的区别

来源:互联网 发布:mac usb电压不足 编辑:程序博客网 时间:2024/06/06 09:25

要理解JDK与JRE的区别,首先需要理解JVM(Java Virtual Machine)。

JVM相当于一个翻译,Java源文件(*.java) 经过编译器编译后成为 *.class字节码文件,JVM将字节码文件翻译成机器可识别的二进制文件。由于相同的命令在不同的操作系统上的二进制表示可能不同,所以对于不同的操作系统有不同的JVM。

由于不同的操作系统都有相应的JVM,所以用Java编写的程序可以在不同的平台上运行。

JRE(Java Runtime Environment)即Java运行环境,包含 Java SE API 和 JVM。Java SE API 中包含各种库函数,只要机器装有JRE,就可以运行Java程序。

JDK(Java Development Kit) 即开发工具集合,它包含Java语言、各种工具(如:javac、javadoc等)以及JRE。简单的说,JDK就是包含各种开发工具以及Java程序运行的环境。在下载JDK时,会默认安装JRE,我们可以称之为Private JRE,因为我们还可以选择安装Public JRE,是独立于JDK的JRE。

Private JRE 和 Public JRE 的 bin 文件夹中都有一个 client VM, 是运行Java程序的默认JVM,但是 Private JRE 中多了一个 server VM,本质上client VM 和 server VM 都是虚拟机,但是client VM 用来默认执行Java 应用程序,它以较少的内存达到较快的速度以满足客户的需求,但是server VM 会耗费较多的内存和启动时间,但是会有较好的执行效果,这主要是对于开发者而言。

原创粉丝点击