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

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


当前回答

总而言之:

JRE = JVM + Java包(如util, math, lang, awt, swing等)+ 运行时库 JDK = JRE +开发/调试工具

如果你想用java开发,你需要JDK,但如果你只想运行java,你需要JRE。

其他回答

JDK (Java Development Kit):

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

JRE (Java Runtime Environment)

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

JVM (Java虚拟机)

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

JDK (Java Development Kit)

Java开发工具包包含开发Java程序所需的工具,以及运行程序所需的JRE。工具包括编译器(javac.exe), Java应用程序启动器(Java .exe), Appletviewer等。

编译器将java代码转换为字节代码。Java应用程序启动器打开JRE,加载类,并调用它的主方法。

如果您想编写自己的程序并编译它们,则需要JDK。对于运行java程序,JRE是足够的。

JRE的目标是执行Java文件

即JRE = JVM + Java包类(如util, math, lang, awt,swing等)+运行时库。

JDK主要针对java开发。也就是说,你可以创建一个Java文件(借助于Java包),编译一个Java文件并运行一个Java文件。

JRE (Java Runtime Environment)

Java运行时环境包含JVM、类库和其他支持文件。它不包含任何开发工具,如编译器、调试器等。实际上,JVM运行程序,它使用JRE中提供的类库和其他支持文件。如果你想运行任何java程序,你需要在系统中安装JRE

Java虚拟机提供了一种独立于平台的代码执行方式; 这意味着在任何机器上编译一次,并在任何位置(任何机器)运行它。

JVM (Java虚拟机)

正如我们都知道的,当我们编译一个Java文件时,输出不是一个“exe”,而是一个“。class”文件。' .class '文件由JVM可以理解的Java字节代码组成。Java虚拟机根据底层操作系统和硬件组合将字节码解释为机器代码。它负责所有的事情,比如垃圾收集、数组边界检查等等……JVM依赖于平台。

JVM之所以被称为“虚拟的”,是因为它提供了一个不依赖于底层操作系统和机器硬件体系结构的机器接口。这种独立于硬件和操作系统的特性是Java程序“一次编写、随处运行”价值的基石。

有不同的JVM实现。它们可能在性能、可靠性、速度等方面有所不同。这些实现的不同之处在于Java规范没有提到如何实现这些功能,比如垃圾收集过程的工作方式是依赖于JVM的,Java规范没有定义任何具体的方法来做到这一点。

JVM

JVM (Java虚拟机)是一种抽象机器。它是一个提供运行时环境的规范,在该环境中可以执行java字节码。 jvm可用于许多硬件和软件平台。

JRE

JRE是Java运行时环境的首字母缩写。它用于提供运行时环境。它是JVM的实现。它是物理存在的。它包含一组库+ JVM在运行时使用的其他文件。

JDK

JDK是Java Development Kit的首字母缩写。它是物理存在的。它包含JRE +开发工具。

链接:- http://www.javatpoint.com/difference-between-jdk-jre-and-jvm

JDK:你需要编写和运行java代码的完整包

OpenJDK:一个独立的JDK实现,使它变得更好

JVM:将Java代码转换为字节码,并提供说明如何编译、加载、验证、检查错误和执行Java代码的规范。

JRE: JVM的实现,一些Java库被用来运行程序

JVM is abbreviated as Java Virtual Machine, JVM is the main component of java architecture. JVM is written in C programming language. Java compiler produce the byte code for JVM. JVM reading the byte code verifying the byte code and linking the code with the ibrary. JRE is abbreviated as Java Runtime Environment. it is provide environment at runtime. It is physically exist. It contain JVM + set of libraries(jar) +other files. JDK is abbreviated as Java Development Kit . it is develop java applications. And also Debugging and monitoring java applications . JDK contain JRE +development tools(javac,java)

OpenJDK是sun JDK的开源版本。Oracle JDK是Sun的官方JDK。