使用 JVM 而不是编译器有什么好处,两者都依赖于操作系统

问题描述 投票:0回答:1

我已阅读这篇文章 其中提到了“一次编写,随处运行”的概念。是JVM的一个主要原因。 但由于 JVM 依赖于操作系统,因此有人需要为不同的操作系统编写不同的 JVM。并且操作系统必须安装相应的JVM才能保证java代码能够运行。 那么它与为不同的操作系统编写不同的编译器有什么不同呢?假设有 2 个操作系统,你能告诉我为这 2 个操作系统编写编译器和 JVM 有什么区别吗?仅仅是因为写起来比较困难,还是其实有更多的历史原因?

compilation jvm
1个回答
0
投票

有时,您编写软件并且知道它将在 XY 操作系统或架构上使用,并且您很乐意为该目标构建软件。但可能存在无数个不同的目标,其中一些目标可能也是您所不知道的。所以这不是哪个更困难的问题。 如果我不告诉你将在哪里运行它,你就无法编译我的代码。另一方面,您可以将其编译为 Java 字节码,并让每个人在他们想要的地方运行它 - 只要他们在那里运行 JVM。已编译的 Java 代码(即使我讨厌它)已经可以很好地用于今天甚至不存在的目标!

© www.soinside.com 2019 - 2024. All rights reserved.