Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.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 了解太阳_Java_Jvm - Fatal编程技术网

Java 了解太阳

Java 了解太阳,java,jvm,Java,Jvm,我正在为希望更好地理解Sun JVM的初学者寻找一些有用的书籍 Java虚拟机(JVM)是一组使用虚拟机模型执行其他计算机程序和脚本的计算机软件程序和数据结构。JVM使用的模型接受一种通常称为Java字节码的计算机中间语言形式。该语言概念上表示面向堆栈的功能体系结构的指令集。截至2006年,全球约有40亿台支持JVM的设备 Java虚拟机在Java字节码上运行,字节码通常(但不一定)由Java源代码生成;JVM还可以用于实现Java以外的编程语言。例如,Ada源代码可以编译成Java字节码,然后

我正在为希望更好地理解Sun 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与一组实现JavaAPI(应用程序编程接口)的标准类库一起分发。虚拟机和API必须彼此一致[可疑–讨论],因此作为Java运行时环境捆绑在一起


并非特定于Sun Java虚拟机实现,但从Sun阅读可能会很有趣。

以下是一些基本内容


你可以试试这个

Ivor Horton最早推出的Java 2 SDK 1.5版


我发现Brian Goetz在There上的文章非常好

你真的想了解JVM是如何工作的,或者你作为一个开发人员来说运行时环境是如何工作的吗?Java通常不是“解释的”——它几乎总是及时编译的。@Monkey-真的。至少从Java1.3开始,我认为没有必要在我的文章中讨论语义。我想这会让他感到困惑,我对java的了解要比对JIT编译和解释的了解多一点