jre是什么(jdk和jre和jvm的关系)

jre是什么(jdk和jre和jvm的关系)

摘要

因为JDK、JRE和JVM之间的联系和区别一直很模糊,所以今天这篇文章旨在梳理它们之间的关系。灵机一动~

1.JDK (Java开发工具包)Java开发工具

JDK包含jre。除了jre,还包含了javac的一些工具类,将java源文件编译成类文件。java文件用来运行这个程序。此外,它还包含源自java的API等。

JDK常用包装:

Java.lang:这是系统的基本类。比如String,math,integer,system,thread提供常用函数。

Java.io这里是和使用的输入输出相关的类,比如文件操作。

Java.net:有与网络相关的类,如URL、URLVonnection等。

Java.util:这是系统辅助类,尤其是集合类concollection、list、map等。

Java.sql:这是数据操作、连接、statememt、resultset等的类。

JDK有以下三个版本:

J2SE,标准版,标准版;J2EE,企业教育,企业教育;J2ME,微教育,主要用于移动设备上的java应用。

总之,JDK是整个Java的核心,包括Java Runtime Envirnment,一堆JAVA工具(javac/java/jdb等。)和基于Java的类库(即Java API包含rt.jar)。

二、JRE (Java运行时环境)Java运行时环境

JRE包含JVM

JRE是保证java程序能运行的必要基础环境,也就是只保证java程序能运行,不能用于开发,jdk用于开发。如果要开发Java,必须包含一个可以运行的环境。因此,JDK包括JVM。而且所有的Java程序都要在JRE下运行。

JDK包括JVM和JAVA核心类库和支持文件。与JDK相比,它不包含开发工具——编译器、调试器和其他工具。

三。Java虚拟机

JRE是java运行时环境,Java运行在底层JVM上,即Java虚拟机,用来加载类文件。Java之所以有跨平台的功能,是因为JVM是根据不同的平台编写的。所以Java是跨平台的,但是JVM确实依赖于平台。

JVM是JRE的一部分。它是一台虚拟的计算机,是在实际的计算机上模拟各种计算机功能实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等。,以及相应的指令系统。JVM的主要工作是解释自己的指令集(即字节码)并映射到本地CPU的指令集或OS的系统调用。Java是一种跨平台语言,但实际上是一种不同的操作系统。使用不同的JVM映射规则,与操作系统无关,从而实现跨平台。它不关心JVM上层的Java源文件,只关心源文件生成的类文件。类的组成包括JVM指令集、符号表和一些补贴信息。

JDK、JRE和JVM之间的关系

实际上,在JDK安装目录下有一个名为jre的目录,其中包含两个文件夹,bin和lib。这里可以认为jvm在bin,jvm需要的类库在lib。

总之,使用JDK(调用java API)开发JAVA程序后,文本JAVA文件在JDK被编译器(javac)编译成JAVA字节码,这些JAVA字节码在JRE上运行,JVM解析这些字节码,映射到CPU指令集或OS系统调用。

后面会分享一些devops和DBA的内容,有兴趣的朋友可以下载!!

以上就是由优质生活领域创作者 深圳生活网小编 整理编辑的,如果觉得有帮助欢迎收藏转发~

分享到 :
大年三十是哪一天
上一篇 2022-04-06
抹茶甜筒步骤
2022-04-06 下一篇
相关推荐

Leave a Reply

Your email address will not be published.