Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 哪个是JVM的正确实现?_Java_Jvm Hotspot - Fatal编程技术网

Java 哪个是JVM的正确实现?

Java 哪个是JVM的正确实现?,java,jvm-hotspot,Java,Jvm Hotspot,我刚刚读到JRE是JVM的一个实现,HotSpot VM也是JVM的一个实现。哪一个 正确吗?两者都正确 Java语言规范JLS定义了Java语言的语法和特性。当您创建一段Java代码时,必须先对其进行编译,然后才能运行,这意味着将其转换为您的机器能够理解的一组底层指令 假设编译器可以将其转换为任何体系结构上的机器指令。Java被设计成可移植的,即跨多个系统操作。JVM,Java虚拟机,本身编译到许多架构上,就是这个问题的答案。不是编译macos、linux和windows,而是编译成Java字

我刚刚读到JRE是JVM的一个实现,HotSpot VM也是JVM的一个实现。哪一个

正确吗?

两者都正确

Java语言规范JLS定义了Java语言的语法和特性。当您创建一段Java代码时,必须先对其进行编译,然后才能运行,这意味着将其转换为您的机器能够理解的一组底层指令

假设编译器可以将其转换为任何体系结构上的机器指令。Java被设计成可移植的,即跨多个系统操作。JVM,Java虚拟机,本身编译到许多架构上,就是这个问题的答案。不是编译macos、linux和windows,而是编译成Java字节码,JVM本身编译到这些操作系统上,解释代码

您可以在这里阅读有关热点的更多信息

Java虚拟机是一种允许供应商实现不同版本的工具

维基百科有许多不同的JVM

是众多能够及时将java代码编译为本机代码的JVM实现中的一个


JRE只是一个JVM实现,外加一个标准JavaAPI和库以及其他一些东西的实现

重复的和?@Cyaegha,但它没有提到JRESir,但它们没有将两者联系起来,这就是我要问的。简短回答:JRE包括JVM以及其他标准库、各种工具和实用程序。在Oracle的JRE或OpenJDK的JRE中,包含的JVM是热点。非常感谢先生,您的简短回答消除了我所有的疑虑。我想您没有提到JRE,但列表中没有提到JRE是JVM实现。为什么?@user3519914 JRE=Hotspot+Java标准库+其他stuff@user3519914JRE不是一个JVM,它包含一个JVM,比如热点和其他东西。它就像一辆汽车,JVM是引擎。