开源中国

我们不支持 IE 10 及以下版本浏览器

It appears you’re using an unsupported browser

为了获得更好的浏览体验,我们强烈建议您使用较新版本的 Chrome、 Firefox、 Safari 等,或者升级到最新版本的IE浏览器。 如果您使用的是 IE 11 或以上版本,请关闭“兼容性视图”。
BCEL首页、文档和下载 - JAVA字节码操作库 - 开源中国社区
全部项目分类
我要评价
Apache
Java
跨平台
Apache
分享
收藏
21 人收藏
收录时间:2010-01-11
BCEL 详细介绍

Byte Code Engineering Library (BCEL),这是Apache Software Foundation 的Jakarta 项目的一部分。BCEL是 Java classworking 最广泛使用的一种框架,它可以让您深入 JVM 汇编语言进行类操作的细节。BCEL与Javassist 有不同的处理字节码方法,BCEL在实际的JVM 指令层次上进行操作(BCEL拥有丰富的JVM 指令级支持)而Javassist 所强调的源代码级别的工作。

使用示例代码:

JavaClass clazz = Repository.lookupClass("java.lang.String");
System.out.println(clazz);
printCode(clazz.getMethods());
...
public static void printCode(Method[] methods) {
for(int i=0; i < methods.length; i++) {
System.out.println(methods[i]);

Code code = methods[i].getCode();
if(code != null) // Non-abstract method
System.out.println(code);
}
}

Java编译过程:

Java的Class文件结构:


大家对 BCEL 的评论 (全部 1 条评论)
{{repayCom.userName}}
叫我刀刀
这个能做干什么? #BCEL#
顶部