最通俗易懂的一篇文章了解JVM、JRE、JDK的关系是什么?

简介: 最通俗易懂的一篇文章了解JVM、JRE、JDK的关系是什么?


需要前期知识

1、JVM和操作系统的关系是什么?

JVM、JRE、JDK的关系?

我们了解了JVM是什么,JVM就行相当于我们的操作系统,是负责来解释或翻译.class文件的,识别.class中的指令,从而调用操作系统中的指令。

我们了解到JVM是使Java程序能够运行并且能够使之跨平台运行的核心。但是JVM自己是干不了这一切的,就像“有了开发人员,为什么需要产品经理,为什么需要测试人员,为什么需要运维人员”一样。

我们就好比是开发人员,但是你开发之前和之后的呢?什么你都不知道怎么开发?项目开发之后你如何保证正常使用?

JVM虽然功能强大,但是还是需要其他的小伙伴给它提供原料(.class文件)。

仅仅是JVM是无法完成一次编译,处处运行的。它需要一个基本的类库,也就是我们很熟悉的API,比如怎么操作文件、怎么连接网络等

Java体系中,在一个程序执行的时候,JVM也会一起运行和一起销毁,会一次性将JVM运行所需的类库都传递给它。JVM标准加上实现的一大堆基础类库,就组成了Java的运行时环境,也就是我们很熟悉的JRE (Java Runtime Environment)。

有了JRE之后,我们的Java程序便可以在任意操作系统中运行了。

扩展:涨知识环节:

你可能听说过:如果只是运行环境的话,只需要安装JRE即可

没错,如果只需要运行一些Java程序,只需要一个JRE就足够了

对于JDK来说,个体是非常庞大的。除了携带着JRE之外,JDK还提供了一些非常好用的小工具,比如:java、javac、jar等。它是Java开发的核心,就像给厨房提供各种料一样,从而能抄出美味的菜。

扩展:涨知识环节:

如果是开发环境就需要安装JDK了

JDK的全拼Java Development Kit。JVM、JRE、JDK他们三者之间的关系,可以用一个包含的关系表示。

三者包含关系:

JDK>JRE>JVM

目录
相关文章
|
3月前
|
安全 Oracle Java
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
280 0
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
|
5月前
|
存储 算法 Java
JvM JDK JRE 三者区别与联系详解
本文深入解析了Java编程中的三个核心概念:JVM(Java虚拟机)、JDK(Java开发工具包)和JRE(Java运行环境)。JVM是执行Java字节码的虚拟计算机,实现“一次编译,到处运行”;JDK包含JRE及开发工具,用于编写和调试Java程序;JRE负责运行已编译的Java程序。文章详细阐述了它们的功能、组成及应用场景,并通过实例说明其在实际开发中的作用,帮助开发者理解三者联系与区别,提升开发效率与问题解决能力。适合Java初学者及进阶开发者学习参考。
838 3
|
5月前
|
监控 Oracle Java
JVM JDK JRE 使用指南及组件封装方法详解
本指南全面介绍了JVM、JDK、JRE的使用方法与Java组件封装技巧。内容涵盖JDK安装配置、JRE使用、JVM参数调优(如堆内存设置和垃圾回收器选择),以及类、包的封装实践。通过示例展示工具类与数据访问组件的封装方法,并讲解JAR包创建与发布流程。此外,还提供了常见问题解决方案,如内存溢出处理和依赖冲突管理。帮助开发者掌握高效、规范的Java开发技能,提升代码复用性和可维护性。附带面试资料供进一步学习。
242 0
|
12月前
|
Oracle 安全 Java
深入理解Java生态:JDK与JVM的区分与协作
Java作为一种广泛使用的编程语言,其生态中有两个核心组件:JDK(Java Development Kit)和JVM(Java Virtual Machine)。本文将深入探讨这两个组件的区别、联系以及它们在Java开发和运行中的作用。
396 1
|
12月前
|
Java 编译器 API
深入解析:JDK与JVM的区别及联系
在Java开发和运行环境中,JDK(Java Development Kit)和JVM(Java Virtual Machine)是两个核心概念,它们在Java程序的开发、编译和运行过程中扮演着不同的角色。本文将深入解析JDK与JVM的区别及其内在联系,为Java开发者提供清晰的技术干货。
229 1
|
12月前
|
小程序 Java 程序员
JDK 和 JRE 有什么区别
JDK(Java Development Kit)是Java开发工具包,包含编译器、调试器等开发工具,用于开发Java程序。JRE(Java Runtime Environment)是Java运行环境,包含Java虚拟机和类库,用于运行Java程序。简言之,JDK用于编写Java程序,JRE用于运行这些程序。
379 2
|
4月前
|
存储 Ubuntu 安全
在Ubuntu 16.04上安装openjdk-6/7/8-jdk的步骤
在整个安装过程中,你可能需要管理员权限,因此你可能要使用 `sudo` 来获取必要的权限。记得做完每一个步骤后,都要检查输出,以确保没有发生错误,并且每项操作都成功完成。如果在安装过程中遇到问题,查看 `/var/log/` 下的日志文件对于问题的解决可能是有帮助的。
271 21
|
4月前
|
IDE Ubuntu Java
在Ubuntu18.04安装兼容JDK 8的Eclipse集成开发环境的指南。
完成以上步骤后,您将在Ubuntu 18.04系统上成功安装并配置了Eclipse IDE,它将与JDK 8兼容,可以开始进行Java开发工作。如果遇到任何问题,请确保每一步骤都正确执行,并检查是否所有路径都与您的具体情况相匹配。
186 11
|
3月前
|
Ubuntu Java Android开发
在Ubuntu 18.04上安装与JDK 8兼容的Eclipse版本的步骤。
安装过程结束后,您就可以开始使用Eclipse来开发您的Java项目了,并且确保它与JDK 8兼容无误。这个过程涉及的是一个基本的安装流程,针对使用Java 8的用户,Eclipse的其他配置和插件安装根据个人开发环境和需求来定制。
266 0
|
6月前
|
Java 关系型数据库 MySQL
在Linux平台上进行JDK、Tomcat、MySQL的安装并部署后端项目
现在,你可以通过访问http://Your_IP:Tomcat_Port/Your_Project访问你的项目了。如果一切顺利,你将看到那绚烂的胜利之光照耀在你的项目之上!
370 41