1个回答
2013-09-17
展开全部
第一部分 类和类的装载
我们来看一下类以及它们被JVM装载的时候做了些什么?
一个类的二进制形式
用Java语言的开发人员通常不必关心通过编译器运行他们的源代码时所发生的一些细节问题。在本文中。我会介绍许多有关从源代码到可执行的程序这个过程的背后细节,因此,我们先来看一下编译器所产生的二进制类。
二进制类的格式实际上是被JVM(Java虚拟机)规范定义的。正常的类的描述是一个编译器利用Java语言的源代码生成的,并且通常被保存在一以.class为扩展名的文件中。但是这些特征都不是本质的。
其它的一些编程语言已经被开发使用Java的二进制类的格式,并且,因为一些目的,新的类的描述被创建并且被直接装载进一个正在执行的JVM中。但是JVM所关心的,重要的不是这些源代码或它是怎样被存储的,而是这个格式自身。
因此,先来这种类格式看上去象什么呢?下面(List 1.)列出了一个非常短的类的源代码,紧跟着是用编译器输出的这个类文件的一部分十六进制的显示:
List 1.Hello.java的源代码和(部分)二进制表示
我们来看一下类以及它们被JVM装载的时候做了些什么?
一个类的二进制形式
用Java语言的开发人员通常不必关心通过编译器运行他们的源代码时所发生的一些细节问题。在本文中。我会介绍许多有关从源代码到可执行的程序这个过程的背后细节,因此,我们先来看一下编译器所产生的二进制类。
二进制类的格式实际上是被JVM(Java虚拟机)规范定义的。正常的类的描述是一个编译器利用Java语言的源代码生成的,并且通常被保存在一以.class为扩展名的文件中。但是这些特征都不是本质的。
其它的一些编程语言已经被开发使用Java的二进制类的格式,并且,因为一些目的,新的类的描述被创建并且被直接装载进一个正在执行的JVM中。但是JVM所关心的,重要的不是这些源代码或它是怎样被存储的,而是这个格式自身。
因此,先来这种类格式看上去象什么呢?下面(List 1.)列出了一个非常短的类的源代码,紧跟着是用编译器输出的这个类文件的一部分十六进制的显示:
List 1.Hello.java的源代码和(部分)二进制表示
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询