Java面试题:JDK 和 JRE 有什么区别?

本文将介绍JDK 和 JRE 有什么区别?

什么是 JDK?

JDK(Java Development Kit)是 Java 的标准开发工具包。

JDK 提供了编译、运行 Java 程序所需的各种工具和资源,包括 Java 编译器、Java 运行环境 JRE,以及常用的 Java 基础类库等,是整个 Java 的核心。

JDK 一般有三种版本:

(1)J2SE(Standard Edition)标准版,是我们通常用的一个版本 

(2)J2EE(Enterpsise Edtion)企业版,使用这种 JDK 开发 J2EE 应用程序,如:EJB

(3)J2ME(Micro Edtion)主要用于移动设备、嵌入式设备上的 Java 应用程序

JDK 的安装目录结构如下图:

Java面试题:JDK 和 JRE 有什么区别?

其中:

  • bin  目录中存放了 JDK 的各种开发工具的可执行文件,如:javac.exe、java.exe 等

  • db  目录是一个小型数据库,在 Java 中引入了一个开源的数据库管理系统 —— JavaDB。因此在学习 JDBC 时无需安装额外的数据库软件,直接使用 JavaDB 即可。

  • include  目录是 Java 和 JVM 交互用的 C 头文件

  • jre  为 Java 运行环境

  • lib  目录存放 Java 类库或库文件,是开发工具使用的归档包文件

什么是 JRE?

JRE(Java Runtime Environment)是运行基于 Java 语言编写的程序所不可缺少的运行环境,用于解释执行 Java 的字节码文件,及 Java 运行环境。

JRE 中包含了 JVM(Java Virtual Machine,Java虚拟机),Runtime Class Libraries 和 Java Application Launcher,这些是运行 Java 程序的必要组件。与大家熟知的 JDK 不同,JRE 是Java 运行环境,并不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器),只是针对于使用 Java 程序的用户。

下图是 Java8 中 JRE 的安装目录:

Java面试题:JDK 和 JRE 有什么区别?

其中:

  • bin  目录里的就是 JVM(Java 虚拟机)

  • lib  目录中存放的则是 JVM 工作所需要的类库,而 JVM 和 lib 和起来就称为 JRE(Java 运行环境)

JDK 和 JRE 的区别

JDK 是 Java 开发工具包,JRE 是 Java 运行时环境,JDK 包含 JRE。

JRE 主要包含:Java 类库的 class 文件(都在 lib 目录下打包成了 jar)和虚拟机(jvm.dll)

JDK 主要包含:java 类库的 class 文件(都在 lib 目录下打包成了 jar)、Java 编译工具和 JRE。

JDK 和 JRE 是 Java开发和运行工具,其中 JDK 包含了 JRE,但是 JRE 是可以独立安装的。

注意:普通用户只需要安装 JRE 来运行 Java 程序,而 Java 程序开发者必须安装 JDK 来编译、调试程序。

不傲才以骄人,不以宠而作威。——诸葛亮
0 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号