如果它是“写入一次可在任何地方运行”,为什么会有那么多Java程序告诉我为我的OS选择版本?

汤姆汤姆

我对Java或一般编程还是比较陌生的。在通过互联网掌握该语言的过程中,我多次说过“写一次就可以在任何地方运行”。

但是我发现很多软件都需要您为您的操作系统选择正确的版本。有时只有一个版本可用。

您能向我解释为什么会这样吗?

耶隆·范内维尔(Jeroen Vannevel)

[根据评论扩展]

Java在虚拟机JVM上运行。在理想情况下,这意味着操作系统要在其后进行抽象,而您只需要确保您的代码可与JVM一起使用,这将使其与基础OS一起使用。使用错误的路径分隔符或行尾可以取消此操作。这不是绝对的真理。

一个应用程序可以使用许多特定于操作系统的方法/库/功能/等等,这可能使将自己局限于一个通用代码库不可行。相反,他们可能想利用平台提供的一些优势,并使用该平台创建一个单独的应用程序。

该语句可能应该位于“以一种普遍的方式编写一次,在任何地方运行”的方式,但这并不是那么快。

该语句通常与Java链接,但也有其他语言将其合并:Java语言和HTML之类的网络语言将在任何浏览器上运行,因为浏览器本身构成了该语言与底层操作系统之间的抽象。

其他语言没有(全部吗?),因为它们的工作方式不同:C#将使用底层的.NET框架,因为该框架仅适用于Windows。存在跨平台变体(Mono),但考虑C#真正跨平台实在是夸大其词。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章