当前位置: 首页 > news >正文

Java中JVM、JRE和JDK三者有什么区别和联系?

任何语言或者软件的运行都需要环境。就像人要生活在空气中,鱼要活在水中,喜阴植物就不能放在阳光下暴晒一样,任何对象个体的存在都离不开其所需要的环境,编程语言亦是一样的。

java 语言的开发运行,也离不开 Java 语言的运行环境 JRE。没有 JRE 的支持,Java 语言便无法运行。当然,如果还想编译 Java 程序,搞搞小开发的话,JRE 是明显不够了,这时候就需要 JDK。

其实啊,JDK 就是 JRE 加上一些常用工具组成的。JDK 不仅能运行已经被编译好了的 Java 程序,还能支持我们编译 Java 程序(JDK=JRE+各种工具)。

我们学习了 Java 虚拟机 JVM。那么 JDK,JVM 和 JRE,那他们三个有什么区别呢?又有什么联系呢?如果你学到这里产生这样一个疑问,我想说,你到目前为止,学的很不错!那现在为你们整理一下三者的关系和区别吧:

  • JDK(Java Development Kid,Java 开发开源工具包),是针对 Java 开发人员的产品,是整个 Java 的核心,包括了 Java 运行环境 JRE、Java 工具和 Java 基础类库。
  • JRE(Java Runtime Environment,Java 运行环境)是运行 JAVA 程序所必须的环境的集合,包含 JVM 标准实现及 Java 核心类库。
  • JVM(Java Virtual Machine,Java 虚拟机)是整个 Java 实现跨平台的最核心的部分,能够运行以 Java 语言写作的软件程序。


所以说大家看出来三者的关系了吗?其实如下图所示:


 


由图中可以看出以下几点:

  • JDK=JRE+多种Java开发工具
  • JRE=JVM+各种类库
  • 这三者的关系是一层层的嵌套关系。JDK>JRE>JVM

相关文章:

Java中JVM、JRE和JDK三者有什么区别和联系?

任何语言或者软件的运行都需要环境。就像人要生活在空气中,鱼要活在水中,喜阴植物就不能放在阳光下暴晒一样,任何对象个体的存在都离不开其所需要的环境,编程语言亦是一样的。 java 语言的开发运行,也离不开 Java 语言…...

秋季期中考复现xj

flow analysis 1 What is the backdoor file name that comes with the server?( Including file suffix) 服务器自带的后门文件是什么?(含文件后缀) 题目还要求最后把那个文件名MD5一下,再去提交 开始的前三题是流量分析的&…...

【代码随想录】算法训练营 第十四天 第六章 二叉树 Part 1

递归遍历 递归法讲究的就是一个格式,在外边再定义一个用于递归求解的函数reverser,参数是递归的二叉树当前根节点和用于保存遍历得到的答案序列的vector容器; 函数中的格式就是,先写递归终止条件,也就是遍历的结点为…...

【访问控制】—>《熟练使用ACL进行上网行为管理》

✍ 标准和高级ACL功能介绍; ✍ 思科和华为ACL功能有什么区别? ✍ 现网中ACL都有哪些使用场景? -- ACL - 访问控制列表 - 控制: 能通/不能通 -- ACL - 结合功能 list - 简化版本的行为管理 -- 插件性质的功能 --…...

MySQL外键,表与表的关系,多表查询,Navicat软件

外键 MySQL可以使用外键来保持表之间的关系完整性。 要设置外键,可以按照以下步骤进行操作: 在创建表时,使用FOREIGN KEY关键字来指定外键列: CREATE TABLE table1 (id INT PRIMARY KEY,name VARCHAR(50),table2_id INT,FOREI…...

Linux系统镜像备忘

阿里镜像源: ubuntu ubuntu-releases安装包下载_开源镜像站-阿里云 centos centos-stream安装包下载_开源镜像站-阿里云...

Docker容器端口在主机的映射

Docker容器端口在主机的映射 Docker 允许你在启动容器时进行多个端口映射,以便将容器内部的端口映射到宿主机上的不同端口。你可以使用-p或--publish标志来指定端口映射。以下是一些示例,说明如何在 Docker 启动容器时进行多个端口映射: 映…...

Spring Boot中RedisTemplate的使用

当前Spring Boot的版本为2.7.6&#xff0c;在使用RedisTemplate之前我们需要在pom.xml中引入下述依赖&#xff1a; <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId><vers…...

GSCoolink GSV6183 带嵌入式MCU的MIPI D-PHY 转 DP/eDP

Gscoolink GSV6183是一款高性能、低功耗的MIPI D-PHY到DisplayPort/eDP 1.4转换器。通过集成基于RISC-V的增强型微控制器&#xff0c;GSV6183创造了一种具有成本效益的解决方案&#xff0c;提供了上市时间优势。MIPI D-PHY接收器支持CSI-2版本1.3和DSI版本1.3&#xff0c;每条通…...

Linux文件系统 struct dentry 结构体解析

文章目录 前言一、目录项简介二、struct dentry2.1 简介2.2 dentry和inode关联2.3 目录项视图2.4 目录项状态2.5 目录项特点 三、dentry cache3.1 简介3.2 dentry cache 初始化3.3 dentry cache 查看 四、dentry与mount、file的关联五、其他参考资料 前言 这两篇文章介绍了: V…...

C++——vector

目录 vector vector常用接口 构造函数 operator[]size() 迭代器 范围for capacity() resize() reverse() push_back和pop_back insert erase() algorithm::sort 注意 迭代器失效 vector vector单词直译是向量的意思&#xff0c;这个容器可以容纳不同的类型数据&am…...

html5语义化标签

目录 前言 什么是语义化标签 常见的语义化标签 语义化的好处 前言 HTML5 的设计目的是为了在移动设备上支持多媒体。之前网页如果想嵌入视频音频&#xff0c;需要用到 flash &#xff0c;但是苹果设备是不支持 flash 的&#xff0c;所以为了改变这一现状&#xff0c;html5 …...

SQL Server批量删除数据库中的表

如果想要删除数据库中temp 开头的中间表 1. SQL 语句实现 use [DBName] --todo go select drop table name from sys.tables where name like temp% go 将查询结果粘贴到数据库中运行 2. 数据库 单击目标数据库中的Tables ,然后按F7 键&#xff0c;按Name 进行排序&…...

使用SecScanC2构建P2P去中心化网络实现反溯源

个人博客: xzajyjs.cn 前言 这款工具是为了帮助安全研究人员在渗透测试过程中防止扫描被封禁、保护自己免溯源的一种新思路。其利用到了区块链中的p2p点对点去中心化技术构建以来构建代理池。 工具链接&#xff1a;https://github.com/xzajyjs/SecScanC2 实验过程 该工具分为…...

【API篇】七、Flink窗口

文章目录 1、窗口2、分类3、窗口API概览4、窗口分配器 在批处理统计中&#xff0c;可以等待一批数据都到齐后&#xff0c;统一处理。但是在无界流的实时处理统计中&#xff0c;是来一条就得处理一条&#xff0c;那么如何统计最近一段时间内的数据呢&#xff1f; ⇒ 窗口的概念&…...

软件测试面试1000问(含文档)

前前后后面试了有20多家的公司吧&#xff0c;最近抽空把当时的录音整理了下&#xff0c;然后给大家分享下 开头都是差不多&#xff0c;就让做一个自我介绍&#xff0c;这个不用再给大家普及了吧 同时&#xff0c;我也准备了一份软件测试视频教程&#xff08;含接口、自动化、…...

进阶课4——随机森林

1.定义 随机森林是一种集成学习方法&#xff0c;它利用多棵树对样本进行训练并预测。 随机森林指的是利用多棵树对样本进行训练并预测的一种分类器&#xff0c;每棵树都由随机选择的一部分特征进行训练和构建。通过多棵树的集成&#xff0c;可以增加模型的多样性和泛化能力。…...

【Docker】Dockerfile使用技巧

开启Buildkit BuildKit是Docker官方社区推出的下一代镜像构建神器&#xff0c;可以更加快速&#xff0c;有效&#xff0c;安全地构建docker镜像。 尽管目前BuildKit不是Docker的默认构建工具&#xff0c;但是完全可以考虑将其作为Docker&#xff08;v18.09&#xff09;的首选…...

一招解决“请在微信客户端中打开链接”

一招解决“请在微信客户端中打开链接”-遇见你与你分享 在浏览器访问网站&#xff0c;却提示“请在微信客户端打开链接”。虽然这个情况你可能从未遇到过&#xff0c;但对于爱折腾的小伙伴&#xff0c;确是一道拦路虎 其实解决办法很简单&#xff0c;就是新建一个UA&#xff1…...

Python循环语句(一)

目录 一.while循环1.while循环的基础语法2.while循环的嵌套应用3.while循环嵌套案例 一.while循环 1.while循环的基础语法 while循环注意点 while的条件需得到布尔类型&#xff0c;True表示继续循环&#xff0c;False表示结束循环需要设置循环终止的条件&#xff0c;如i 1配…...

FastbootEnhance:让安卓设备调试变得简单高效的Windows工具箱

FastbootEnhance&#xff1a;让安卓设备调试变得简单高效的Windows工具箱 【免费下载链接】FastbootEnhance A user-friendly Fastboot ToolBox & Payload Dumper for Windows 项目地址: https://gitcode.com/gh_mirrors/fa/FastbootEnhance 你是否曾经在刷机、调试…...

猫抓插件:三步轻松下载网页视频音频资源的终极指南

猫抓插件&#xff1a;三步轻松下载网页视频音频资源的终极指南 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 你是否曾经在网上看到一个精彩的视频…...

实战解析:如何通过显卡频率优化解决CUDA/TensorRT推理速度骤降问题

1. 从异常现象到问题定位 最近在部署一个基于YOLOv5的工业检测系统时&#xff0c;遇到了一个让人头疼的问题&#xff1a;当系统从连续检测模式切换到条件触发模式后&#xff0c;原本飞快的CUDA推理速度突然下降了近5倍。更诡异的是&#xff0c;降低相机帧率后&#xff0c;推理…...

柔性LED灯丝DIY:从电路原理到创意饰品制作全攻略

1. 项目概述&#xff1a;当生日遇上柔性LED灯丝给孩子的生日派对准备一份独一无二的、会发光的惊喜&#xff0c;是很多家长和手工爱好者的心愿。这次&#xff0c;我们不买现成的塑料灯牌&#xff0c;而是亲手做一个能戴在头上或挂在脖子上的“生日数字灯冠”。这个项目的核心&a…...

模拟IC设计避坑指南:用Cadence Virtuoso仿真,揭秘电流镜精度下降的3个元凶

模拟IC设计避坑指南&#xff1a;用Cadence Virtuoso仿真&#xff0c;揭秘电流镜精度下降的3个元凶 在模拟CMOS集成电路设计中&#xff0c;电流镜作为基础模块广泛应用于偏置电路、有源负载等场景。然而许多工程师在Cadence Virtuoso IC617中完成电流镜设计后&#xff0c;常会遇…...

深度解析:Performance-Fish如何通过四级缓存架构实现《环世界》400%性能优化

深度解析&#xff1a;Performance-Fish如何通过四级缓存架构实现《环世界》400%性能优化 【免费下载链接】Performance-Fish Performance Mod for RimWorld 项目地址: https://gitcode.com/gh_mirrors/pe/Performance-Fish Performance-Fish是《环世界》&#xff08;Rim…...

基于LLM的长文本摘要工具SumGPT:从原理到本地化部署实战

1. 项目概述&#xff1a;一个为长文本摘要而生的智能工具最近在折腾一些文档处理的工作流&#xff0c;发现一个挺普遍但很烦人的痛点&#xff1a;面对动辄几十页的PDF报告、冗长的会议纪要或是海量的研究论文&#xff0c;想要快速抓住核心要点&#xff0c;简直像大海捞针。手动…...

技术视角:Sketchfab数据提取工具深度解析3D模型下载机制

技术视角&#xff1a;Sketchfab数据提取工具深度解析3D模型下载机制 【免费下载链接】sketchfab sketchfab download userscipt for Tampermonkey by firefox only 项目地址: https://gitcode.com/gh_mirrors/sk/sketchfab 在WebGL技术日益成熟的今天&#xff0c;Sketch…...

城通网盘高速解析终极指南:如何免费实现40倍下载提速

城通网盘高速解析终极指南&#xff1a;如何免费实现40倍下载提速 【免费下载链接】ctfileGet 获取城通网盘一次性直连地址 项目地址: https://gitcode.com/gh_mirrors/ct/ctfileGet 你是否厌倦了城通网盘那令人抓狂的蜗牛下载速度&#xff1f;每次下载大文件都要面对漫长…...

终极游戏性能调优指南:DLSS Swapper智能管理工具深度解析

终极游戏性能调优指南&#xff1a;DLSS Swapper智能管理工具深度解析 【免费下载链接】dlss-swapper 项目地址: https://gitcode.com/GitHub_Trending/dl/dlss-swapper 游戏体验痛点剖析&#xff1a;当DLSS版本成为性能瓶颈 你是否曾在畅玩《赛博朋克2077》时&#xf…...