Java面试之JDK、JRE、JVM区别

1、JDK(Java Development Kit):

JDK是Java开发工具包,它是开发Java应用程序的核心工具。它包含了编译器(javac)、运行时库(Java标准库)、调试器(jdb)等工具,以及Java开发所需的各种库和支持文件。 JDK不仅包括JRE,还包括了开发人员用来编写、编译和调试Java代码的工具。

Java源代码经过编译器(javac)编译后,会生成字节码文件(.class文件),这些字节码文件包含了与特定平台无关的中间代码,然后由Java虚拟机(JVM)在运行时解释或编译成特定平台上的本地机器代码。

2、JRE(Java Runtime Environment):

JRE是Java运行时环境,它包含了Java虚拟机(JVM)以及运行Java程序所需的核心类库和支持文件,但不包含开发工具。 JRE是运行Java程序的必要环境,如果你要运行Java程序,只需要安装JRE即可。

3、JVM(Java Virtual Machine):

JVM是Java虚拟机,它是Java程序的运行环境。它负责将Java字节码解释或编译成特定平台上的本地机器代码,以便在不同的操作系统上运行Java程序。 JVM提供了内存管理、垃圾回收、安全检查等运行时环境支持,使得Java程序具有跨平台性和可移植性。

4、简而言之 :

  • JDK是开发Java程序所需的工具包,JRE是运行Java程序所需的环境,而JVM则是Java程序的运行引擎。
  • JDK包含了JRE,而JRE又包含了JVM。这种包含关系表明了它们之间的依赖和功能分配。
相关推荐
无巧不成书02183 小时前
30分钟入门Java:从历史到Hello World的小白指南
java·开发语言
程序员飞哥4 小时前
90后大龄程序员失业4个月终于上岸了
后端·面试·程序员
zs宝来了4 小时前
Playwright 自动发布 CSDN 的完整实践
java
吴声子夜歌6 小时前
TypeScript——基础类型(三)
java·linux·typescript
庞轩px6 小时前
模拟面试回答第十三问:JVM内存模型
jvm·面试·职场和发展
DynamicsAgg7 小时前
企业数字化底座-k8s企业实践系列第二篇pod创建调度
java·容器·kubernetes
人工智能AI技术7 小时前
计算机专业面试必看!90%学生都踩过的算法面雷区
人工智能·面试
森林里的程序猿猿7 小时前
并发设计模式
java·开发语言·jvm
222you7 小时前
四个主要的函数式接口
java·开发语言