JDK,JRE和JVM之间的差异。

这三个JDK,JRE和JVM都是相互依赖的,并且没有共同点,因此以表格形式说明它们之间的差异并不有效,但是我们将在以下段落中进行讨论。

虚拟机

JVM是Java虚拟机的缩写,基本上是一种规范,它提供了一个运行时环境,可以在其中运行Java字节码,即它是抽象的东西,其实现独立于算法选择,由Sun和其他公司提供。 。是JVM,它负责将Byte代码转换为机器特定的代码。它还可以运行用其他语言编写并编译为Java字节码的程序。JVM执行上述任务:加载代码,验证代码,执行代码,提供运行时环境。

杰瑞

JRE是Java运行时环境,是JVM的实现,即,实现了JVM中定义的规范并创建了用于执行代码的相应环境。JRE主要包括Java二进制文件和其他类,以执行物理上存在的JVM一样的程序。JRE与Java二进制文件一起还包括各种部署技术,与执行的代码进行交互的用户界面,一些用于不同功能和语言的基本库以及基于util的库。

JDK

JDK是Java Development Kit的缩写,包括编译,调试和执行Java程序所需的所有工具,可执行文件和二进制文件.JDK依赖于平台,即Windows,Mac和Unix系统有单独的安装程序.JDK包括JVM和JRE完全负责代码执行。它是JDK的版本,代表Java的版本。

以下是JDK,JRE和JVM之间的重要区别

序号

JDK
杰瑞
虚拟机
1个
Definition
JDK(Java开发工具包)是一种用于使用Java开发应用程序的软件开发工具包。除了JRE,JDK还包含许多开发工具(编译器,JavaDoc,Java Debugger等)。
JRE (Java Runtime Environment) is the implementation of JVM and is defined as a software package that provides Java class libraries, along with Java Virtual Machine (JVM), and other components to run applications written in Java programming.
JVM(Java虚拟机)是依赖于平台的抽象机,具有三个概念作为规范,描述JVM实现的要求的文档,实现,满足JVM要求的计算机程序以及实例(执行Java的实现)字节码提供了用于执行Java字节码的运行时环境。
2
Prime functionality
JDK主要用于代码执行,并且具有开发的主要功能。
On other hand JRE is majorly responsible for creating environment for code execution.
另一方面,JVM指定所有实现,并负责将这些实现提供给JRE。
3
Platform Independence
JDK依赖于平台,即对于不同的平台,需要不同的JDK。
Like of JDK JRE is also platform dependent.
JVM是平台无关的。
4
Tools
由于JDK负责主要开发,因此它包含用于开发,调试和监视Java应用程序的工具。
On other hand JRE does not contain tools such as compiler or debugger etc. Rather it contains class libraries and other supporting files that JVM requires to run the program.
JVM不包括软件开发工具。
5
Implementation
JDK = Java运行时环境(JRE)+开发工具
JRE = Java Virtual Machine (JVM) + Libraries to run the application
JVM =仅运行时环境,用于执行Java字节码。