【问题标题】:Determining Order of Method Calls in Java Eclipse [duplicate]确定 Java Eclipse 中方法调用的顺序 [重复]
【发布时间】:2013-05-01 17:08:17
【问题描述】:

假设您收到了一个 Java Eclipse 项目。在这个项目中,有一堆类相互调用方法,传递参数并完成工作,因此项目中的类是相互关联的。

那么,您特别想了解一个类的工作原理。 Eclipse 中是否有一种方法可以通过其工具帮助我找出该特定类中每个方法的调用顺序

我知道我可以在每个方法中执行System.out.println(),并通过监视控制台输出来确定顺序,但这对于真正的大类来说太耗时了。

还有其他方法吗?谢谢

【问题讨论】:

  • 在调试模式下运行并逐步执行?
  • 你怎么知道订单是固定的?没有if 语句和循环吗?当然,顺序会根据输入而改变。
  • 一个有趣的article 使用 AspectJ 和 AOP 来做到这一点。
  • 您可以查看 Eclipse 的 Call Hierarchy 和 References 选项,以便在手动检查代码时获得更多帮助。有关代码的详细运行时信息,您可以使用 stackoverflow.com/a/2582906/283084 中提到的 Aspect4J 来记录方法调用。

标签: java eclipse


【解决方案1】:

试试Log4j apache 的API。会帮助你的。

【讨论】:

    【解决方案2】:

    如果你使用默认的快捷键Ctrl Alt H,你会得到调用层次结构,它让你知道哪些方法调用了这个方法和你调用了什么方法(你可以继续浏览这些方法)。

    引用也可能非常有用(Ctrl Shift G)。

    【讨论】:

      【解决方案3】:

      我不知道你想花多少时间在上面,但是 java 代理可以帮助你,因为你可以在运行时挂钩代码并编写一个监控工具。

      另一种选择是在某个点设置断点,然后查看堆栈跟踪。

      【讨论】:

        猜你喜欢
        • 2012-03-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-06-25
        • 2012-12-07
        • 1970-01-01
        相关资源
        最近更新 更多