【问题标题】:Understanding the Sun JVM [closed]了解 Sun JVM [关闭]
【发布时间】:2018-04-03 18:31:24
【问题描述】:

我正在为想要更好地了解 Sun JVM 的初学者寻找一些有用的书籍

【问题讨论】:

  • 您是否真的想了解 JVM 的真正工作原理,或者就您作为开发人员而言,运行时环境是如何工作的?

标签: java jvm


【解决方案1】:

不特定于 Sun Java 虚拟机实现,但来自 Sun 的 The Java Virtual Machine Specifications 可能是一个有趣的读物。

【讨论】:

    【解决方案2】:

    你可以试试这个。

    Ivor Horton 的 Java 2 SDK 1.5 入门版

    【讨论】:

      【解决方案3】:

      【讨论】:

        【解决方案4】:

        Bill Venners 的“Java 虚拟机内部”

        http://www.artima.com/insidejvm/ed2/

        【讨论】:

          【解决方案5】:

          我发现 Brian Goetz 在 JVM 这里的文章非常好

          【讨论】:

            【解决方案6】:

            wikipedia - JVM

            Java 虚拟机 (JVM) 是一组计算机软件程序和数据结构,它们使用虚拟机模型来执行其他计算机程序和脚本。 JVM 使用的模型接受一种计算机中间语言,通常称为 Java 字节码。这种语言在概念上代表了面向堆栈的能力架构的指令集。截至 2006 年,全球估计有 40 亿台启用 JVM 的设备。

            Java 虚拟机在 Java 字节码上运行,该字节码通常(但不一定)从 Java 源代码生成; JVM 也可用于实现 Java 以外的编程语言。例如,Ada 源代码可以编译为 Java 字节码,然后可以由 JVM 执行。 JVM 也可以由 Sun(Java 的开发者)以外的其他公司发布——使用“Java”商标的 JVM 可以由其他公司开发,只要它们遵守 Sun 发布的 JVM 规范(以及相关的合同义务)。

            JVM 是 Java 平台的关键组件。由于 JVM 可用于许多硬件和软件平台,Java 本身既可以是中间件,也可以是一个平台——因此商标是一次编写,随处运行。对所有平台使用相同的字节码允许 Java 被描述为“编译一次,随处运行”,而不是描述跨平台编译语言的“编写一次,随处编译”。 JVM 还启用了诸如自动异常处理等独特功能,它为每个软件错误(异常)提供“根本原因”调试信息,而与源代码无关。

            JVM 与一组实现 Java API(应用程序编程接口)的标准类库一起分发。虚拟机和 API 必须彼此一致[可疑 – 讨论],因此作为 Java 运行时环境捆绑在一起。

            【讨论】:

            • Java 通常不被“解释”——它几乎总是及时编译。
            • @Monkey - 是的。至少从 Java 1.3 及更高版本开始。
            • 我认为没有必要在我的帖子中讨论语义。我认为这会让他感到困惑。
            • 我对 java 的了解比在 JIT 编译和解释之间感到困惑
            猜你喜欢
            • 1970-01-01
            • 2011-04-03
            • 2017-06-24
            • 2011-09-21
            • 1970-01-01
            • 1970-01-01
            • 2023-03-06
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多