![]() |
1
1
首先,如果在一个类中有100个方法,那么它是重构的主要候选者。 然后-您可以在对象周围创建一个代理(使用cglib或javassist),并且每当调用方法时,都要报告调用。 |
![]() |
2
5
AOP(AOP) Aspect Oriented Programming ) |
![]() |
3
1
用于调试 ,如果您使用的是IBMJVM,则可以使用方法跟踪(可能会禁用跟踪方法的某些JIT优化): 以文本形式打印到输出流:
或以二进制格式(使用内置的com.ibm.jvm.format.traceformat app处理)文件:
Java诊断指南中的全部细节: http://www.ibm.com/developerworks/java/jdk/diagnosis/ |
![]() |
4
1
如果您只需要将其用于调试/dev目的,而不是在最终系统中,那么可以使用Eclipse分析。Eclipse Frrices允许您定义在不同时间(例如在方法的开始)执行的探针,这些探针允许您在访问诸如方法名称和参数值之类的东西时执行任意Java代码。您可以定义各种过滤器,以便仅在当前需要时执行探测。我不知道它是如何工作的,但是我假设类文件是被检测的,所以运行时的影响应该相对较低。 另一方面,如果您在生产代码中需要它,我将投票支持AOP——正如Nanda建议的那样。 |
|
user29759326 · 如何返回递归函数中的最后一个值? 5 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 5 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 5 月前 |
![]() |
rudraraj · java中未声明最终变量 5 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 5 月前 |