Jdk 和 jre 的 关系和区别
Jdk 和 jre 的 关系和区别
区别:
JDK:是Java Development Kit 的简称–>翻译过来就是:Java 开发工具包。是程序员使用java语言编写java程序所需的开发工具包,是提供给程序员使用的。
JRE:是Java Runtime Environment 的简称–>翻译过来就是:Java 运行时环境,是使用java语言编写的程序运行所需要的软件环境,是提供给想运行java程序的用户使用的
这就是他们俩的区别:目标用户不同:jdk是给苦逼程序员用的,里面全是给他们打包好的工具。Jre是给像运行java程序的用户用的。
看图理解:
1.有一位程序员,他准备开始写程序了
2.这位程序员,有点懒,不想自己动手写底层已经写好的程序,于是
3.然后,jdk就满足了他的要求
4.该程序员,拿到StringBUffer工具类之后,开始埋头撸代码
5.程序写好之后,想实验一下能不能运行
6.Jdk回应他,我内置了jre,可以运行java程序
7.jdk中的jre运行写好的java程序
8.虽然知道有bug,但是该程序员没有处理(现实中一定要处理哦,这里知识娱乐,加深一下记忆)
9.这个时候来了一个愣头青,闪亮登场
10.这个愣头青买了这个程序,还以为占了便宜
11.愣头青想要,运行这个程序
12.于是他找到了jre,因为愣头青只要运行程序,不需要开发,所以他就没有使用jdk的必要
13.后续发现bug,和开发人员发生了一些暴力。。。。。。。。。你们自己想象
还可以这么理解:
jdk相当于造汽车的工具,里面打包好了扳手,锤子,螺丝刀,皮尺布等等工具,一并丢给造汽车的工程师,工程师想用哪个就用哪个,不用的就放哪儿不影响。
接下来说说jre,工程师造好汽车,卖给要用车的人,那他买回去不能放着吧,要开吧,开车的环境要有吧,不能在房间里开吧,肯定是要上马路上的,那这jre就相当于马路,是汽车能正常跑起来的环境。
联系:
要说两者有啥联系,其实也没多大联系,就是jdk包里存放了jre,按照上面的比喻,就是,打包给汽车工程师时,又给了汽车工程师一条马路,用来测试造好的汽车在正常的马路环境下能不能正常跑起来。
原创文章,转载请标明出处: https://blog.csdn.net/qq_41530937/article/details/105444848
一定要看的干货
Jdk 和 jre 的 关系和区别的更多相关文章
- Java学习2 - JDK和JRE和JVM的区别_JDK的下载安装_环境变量配置
一 JDK和JRE和JVM的区别 Jdk: Java Development kit - Java 开发工具 JRE: Java Runtime Environment - java运行环境 JVM: ...
- jdk、jre与jvm的区别与联系
为了学习数据库,重装了系统,之前前一直在用eclipse,现在准备换成myeclipse,这之前当然需要重新设置环境变量,顺手写下有关jdk.jre与jvm的区别与联系以供交流参考. 首先来说一下JD ...
- JDK、JRE和JVM的区别与相互之间的联系
工作这么久,好多时间都在研究一些并发.多线程.分布式.框架等这些东西,但是前几天突然被人问到jdk.jre.jvm的区别与联系,瞬间觉得一脸懵逼,感觉还是有必要重新整理一下一些比较基本的java知识了 ...
- Java虚拟机(JVM),JDK,JRE和JVM的区别——通过示例学习Java编程(2)
Java虚拟机(JVM),JDK,JRE和JVM的区别 作者:CHAITANYA SINGH 来源:https://www.koofun.com/pro/kfpostsdetail?kfpostsid ...
- 什么是JDK什么是JRE?JDK和JRE的关系
什么是JDK什么是JRE?JDK和JRE的关系 我们看看来自百度百科的解释: JDK是 Java 语言的软件开发工具包,主要用于移动设备.嵌入式设备上的java应用程序.JDK是整个java开发的核心 ...
- JDK、JRE、JVM的区别
JDK: JDK(Java Development Kit)顾名思义它是给开发者提供的开发工具箱,是给程序开发者用的.它除了包括完整的JRE(Java Runtime Environment),Jav ...
- java基础---JDK、JRE、JVM的区别和联系
当我们学习java语言时,首先需要安装到我们电脑上的就是jdk.jdk是java语言的开发环境,只有安装了jdk,我们才能使用java语言开发程序. JDK=JRE+开发工具包 JRE=JVM+核心类 ...
- Java 技术体系(JDK 与 JRE 的关系)、POJO 与 JavaBeans
Java 技术体系的分层结构(不同的颜色表示不同的层次),尤其注意 JDK 与 JRE 之间的包含关系: 图见 Java Platform Standard Edition 7 Documentati ...
- JDK、JRE 和 JVM 的区别
JDK JDK 是 Java Development Kit 的缩写,JDK 是 Java 语言的软件开发工具包( SDK ).它提供了Java 开发.编译.运行需要的文件和环境. 如果你是 Java ...
随机推荐
- js 拖拽实现面向对象
1.js 支持面向对象编程,但只是基于面向对象,不使用类或者接口.2.演变 工厂模式------->构造函数模式---------->原型模式 工厂模式的缺点: ①函数内部new ,不太符 ...
- 从火箭发场景来学习Java多线程并发闭锁对象
从火箭发场景来学习Java多线程并发闭锁对象 倒计时器场景 在我们开发过程中,有时候会使用到倒计时计数器.最简单的是:int size = 5; 执行后,size—这种方式来实现.但是在多线程并发的情 ...
- C++基础 学习笔记之一:源代码的格式化
C++基础 学习笔记之一:源代码的格式化 1. 源代码中的标记与空白 C++中的语句是以分号表示语句的结束.在C++中空格和回车以及制表符均为相同作用,即三者通常可以互相替代. 例如可以将一个简单的m ...
- seldom之数据驱动
seldom之数据驱动 如果自动化某个功能,测试数据不一样而操作步骤是一样的,那么就可以使用参数化来节省测试代码. seldom是我在维护一个Web UI自动化测试框,这里跟大家分享seldom参数化 ...
- Ext.grid 分页
1. 定义变量,存储,每页显示多少条数据 var itemsPage = 25; 2.grid数据源 //列表源 var oStore = Ext.create('Ext.data.Store', { ...
- jenkins-gitlab-harbor-ceph基于Kubernetes的CI/CD运用(四)
前景提要 jenkins与gitlab结合,实现代码自动拉取:https://www.cnblogs.com/zisefeizhu/p/12548662.html jenkins与kubernetes ...
- CSS实现垂直居中布局
垂直居中 每日更新前端基础,如果觉得不错,点个star吧
- nmap加载nse脚本在内网渗透中的使用-上
转载自:https://mp.weixin.qq.com/s/zEgHxJEOfaiYVZYmg7NnXA? 大多数情况下,大家都认为nmap只是一个扫描工具,而不把当成是一个渗透工具.nmap集成了 ...
- Flutter 实现不同样式(有样式) 的TextField (可自定义),类似微博#话题#、@用户,(给TextField加TextSpan)
描述 先上效果图 在项目中,有 @ 和 话题功能,需要在编辑时即可回显,但是官方原生的TextField不支持对部分文字定义不同的样式,所以封装了一个. 注意:这不是富文本插件,不支持在输入框中显示图 ...
- IdentityServer4源码解析_4_令牌发放接口
目录 identityserver4源码解析_1_项目结构 identityserver4源码解析_2_元数据接口 identityserver4源码解析_3_认证接口 identityserver4 ...