JVM, JDK, JRE和OpenJDK之间的区别是什么?

我在用Java编程时遇到了这些短语,它们之间有什么区别?


当前回答

通俗来说:JDK = JRE +开发/调试工具,其中JDK是我们与Java一起工作的完整包,从创建编译到运行它。另一方面,JRE只是代码(字节码)的运行。

注意:-无论我们是安装JDK还是JRE, JVM都会与这两个包捆绑在一起,JVM是JIT编译器将字节代码转换为机器特定代码的部分。

只需阅读关于JDK、JRE、JVM和JIT的文章即可

其他回答

JVM:这实际上意味着字节码解释器。它依赖于平台。例如:在Windows平台上,'java.exe'或'javaw.exe'进程是jvm进程。

JDK:是一个包含开发和执行java程序/应用程序所必需的库和实用程序的工具包

JRE: java应用程序的执行环境。即,它只支持运行时依赖,包括JVM编译程序。如果我们想编译一个java程序,我们需要jdk。

JDK——像javac这样的工具用于将*.java文件编译为*.class字节码文件(主要用于开发Java程序)

JRE -运行*.jar文件的工具(基本上运行Java程序)

JVM -将*.class文件编译为可执行机器代码的工具(运行所有Java字节码)

OpenJDK只是Java JDK的一个发行版。

JDK (Java Development Kit):

包含开发Java程序所需的工具。 如果您想编写自己的程序并编译它们,则需要JDK。 JDK主要针对java开发。

JRE (Java Runtime Environment)

Java运行时环境包含JVM、类库和其他支持文件。 JRE的目标是执行Java文件。

JVM (Java虚拟机)

JVM根据底层操作系统和硬件组合将字节码解释为机器码。它负责所有的事情,比如垃圾收集、数组边界检查等等……Java虚拟机提供了一种平台独立的代码执行方式。

JVM Java虚拟机,实际执行Java字节码。 它是JAVA平台上的执行块。它将字节码转换为机器代码。

JRE Java运行时环境,提供了执行Java应用程序的最低要求;它由Java虚拟机(JVM)、核心类和支持文件组成。

JDK Java开发工具包,它拥有开发应用程序软件的所有工具。它是JRE+JVM

Open JDK是Java平台的免费开源实现。

通俗来说:JDK = JRE +开发/调试工具,其中JDK是我们与Java一起工作的完整包,从创建编译到运行它。另一方面,JRE只是代码(字节码)的运行。

注意:-无论我们是安装JDK还是JRE, JVM都会与这两个包捆绑在一起,JVM是JIT编译器将字节代码转换为机器特定代码的部分。

只需阅读关于JDK、JRE、JVM和JIT的文章即可