解读字节码文件
二进制类格式实际上是由 JVM 规范定义的。通常这些类表示是由编译器从 Java 语言
源代码生成的,而且它们通常存储在扩展名为 .class 的文件中。但是,这些特性都无关紧
要。就 JVM 而言,重要的部分不是源代码以及如何存储源代码,而是格式本身。下面我们
看一段 Java 的源代码,我们将分析它生成的字节码文件。
package Other;
class Test{
void print(PassTest test){
test.a=10;
test=new PassTest();
test.a=20;
}
}
上述源代码经过编译器编译之后便会生成一个字节码文件,字节码是一种二进制的类
文件,它的内容是 JVM 的指令,而不像 C、C++经由编译器直接生成机器码。我们不用担
心生成的字节码文件的兼容性,因为所有的 JVM 全部遵守 Java 虚拟机规范,也就是说所有
的 JVM 环境都是一样的,这样一来字节码文件可以在各种 JVM 上运行。
由于字节码文件为二进制格式,因此阅读十分不便,这里我为大家介绍一款阅读字节
码文件的软件“ClassLib”,可以在
http://www.ej-technologies.com/download/jclasslib/files.html
得到下载,该软件为免费软件,不需要注册。该软件将二进制数据转化为文本数据,方便阅
读。
使用该软件打开上述编译好的字节码文件,如图:
数字签名人 杨迪
DN:cn=杨迪,c=CN-中国,
email=yyyyttttwwww@gmail.com
原因:我是该文档的作者
位置:沈阳
日期:2006.10.03 21:49:23 +08'00'
评论2
最新资源