JDK与JRE的区别并且分别都有什么作用

如题所述

是java程序的运行环境。既然是运行,当然要包含jvm,也就是大家熟悉的虚拟机啦,developmentkit,是java的开发工具包,里面包含了各种类库和工具。当然也包括了另外一个Jre.相信大家都知道jdk的bin下有各种java程序需要用到的命令,与jre的bin目录最明显的区别就是jdk下才有javac,这一点很好理解,因为jre只是一个运行环境而已。与开发无关,正因为如此,具备开发功能的jdk自己的jre下才会同时有client性质的jvm和server性质的jvm,而仅仅作为运行环境的jre下只需要client性质的jvm.dll就够了。记得在环境变量path中设置jdk/bin路径麽?这应该是大家学习Java的第一步吧,老师会告诉大家不设置的话javac和java是用不了的。确实jdk/bin目录下包含了所有的命令。可是有没有人想过我们用的java命令并不是jdk/bin目录下的而是jre/bin目录下的呢?不信可以做一个实验,大家可以把jdk/bin目录下的java.exe剪切到别的地方再运行试想一下如果java为了提供给大多数人使用,他们是不需要jdk做开发的,只需要jre能让java程序跑起来就可以了,那么每个客户还需要手动去设置环境变量多麻烦啊?所以安装jre的时候安装程序自动帮你把jre的java.exe添加到了系统变量中,验证的方法很简单,大家看到了系统环境变量的如果强行能够把jdk/bin挪到system32变量前面,当然也可以迫使使用jdk/jre里面的java,不过除非有必要,我不建议大家这么做。使用单独的jre跑java程序也算是客户环境下的一种测试。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-02-28
说白了,jdk跟eclipse、myeclipse、netbeans等软件一样是java语言的开发软件,只不过jdk没有像他们那样的可视化开发界面,需要在cmd下面进行运行才行。
至于jre当然是java语言的运行环境,也就是虚拟机,jdk、eclipse、myeclipse、netbeans等软件需要jre才能开发运行java语言!本回答被网友采纳
第2个回答  2021-03-20

针对Java语言的初学者,详细介绍初学者对于Java的JDK、JRE、JVM之间的关系,帮助初学者能够理清楚它们各自的作用和应用范围。

第3个回答  2020-12-25
DK:
Java Develpment Kit java 开发工具
JRE:
Java Runtime Environment java运行时环境
JVM:
java Virtual Machine java 虚拟机

jdk 是给开发人员使用的, jre和jvm是给普通用户使用,如果只是运行Java程序,安装JRE即可
JDK:

是java开发工具包,是Sun公司针对java开发人员的产品,jdk中包含jre,在jdk的安装目录下有一个jre的目录,里面有两个文件夹bin和lib,在这里可以认为bin里面就是jvm,lib中是java工作需要的类库,而java和lib合起来就称为jre

JDK(Java Development Kit) 是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。
相似回答