我想在不接触原始类的同时向已编译的Java类添加一些调试代码。我正在考虑使用AspectJ,但我只是想知道是否有可能,以及如何做到这一点?
例:
类A包含作填充并调用方法sum()的void main()。
方面B将println()添加到A.sum()之前
我想使用方面B的修改来运行A类,而无需以任何方式编辑A。
最佳答案
使用加载时编织(LTW)无需接触现有的Java类(二进制或源代码)就可以做到这一点。
请参阅有关LTW的官方文档:
http://www.eclipse.org/aspectj/doc/released/devguide/ltw.html