`
superhanliu
  • 浏览: 49724 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

java中动态载入类、方法的几个玩意儿

阅读更多

1 最基本的就是jdk自带的java反射机制了 java reflect

2 javassit http://www-128.ibm.com/developerworks/cn/java/j-dyn0916/

Javassist 是广泛使用的 JBoss 应用服务器中加入的面向方面的编程功能的基础. Javassist 不仅是一个处理字节码的库,而且更因为它的另一项功能使得它成为试验 classworking 的很好的起点。这一项功能就是:可以用 Javassist 改变 Java 类的字节码,而无需真正了解关于字节码或者 Java 虚拟机(Java virtual machine JVM)结构的任何内容

3 BCEL http://www-128.ibm.com/developerworks/cn/java/j-dyn0414/index.html

Apache Byte Code Engineering Library (BCEL) 可以深入 Java 类的字节码。可以用它转换现有的类表示或者构建新的类,因为 BCEL 在单独的 JVM 指令级别上进行操作,所以可以让您对代码有最强大的控制。不过,这种能力的代价是复杂性 BCEL 使您能够同样具备 Javassist 提供的分析、编辑和创建 Java 二进制类的所有基本能力。BCEL 的一个明显区别是每项内容都设计为在 JVM 汇编语言的级别、而不是 Javassist 所提供的源代码接口上工作。除了表面上的差别,还有一些更深层的区别,包括在 BCEL 中组件的两个不同层次结构的使用——一个用于检查现有的代码,另一个用于创建新代码。

4 cglib

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics