【问题标题】:How to see from where a public method is called in Eclipse using Java?如何使用 Java 从 Eclipse 中调用公共方法的位置查看?
【发布时间】:2010-10-01 13:42:17
【问题描述】:

我正在 Eclipse 中开发一个 Java 项目。有时,当我进行重构时,我想看看从哪些其他类中调用了公共方法。

有一种原始方法可以做到这一点,我现在正在使用。我可以注释掉该方法并查看 Eclipse 中哪些类存在错误。在 Eclipse 中有没有更好的方法来做到这一点?例如。通过选择方法签名并通过快捷键运行命令?

【问题讨论】:

  • Ctrl+Shift+G 显示从何处调用方法,而Ctrl+Alt+H 显示来自工作区中方法的调用。
  • @Prince 啊,这就是我多年来一直在寻找的东西。

标签: java eclipse keyboard-shortcuts method-call


【解决方案1】:

单击方法名称,然后按 Ctrl+Alt+H 以调出 Call Hierarchy 视图。

【讨论】:

  • @AdamParkin:我想打开上下文菜单会显示可用的快捷方式。
  • 其实想通了:在Navigate -> Call Hierarchy下,或者快捷键是CTRL+option+H
  • Ctrl+Shift+G 显示从何处调用方法,而Ctrl+Alt+H 显示来自工作区中方法的调用。
  • @Prince: Ctrl+Alt+H 可以——尽管我通常使用它来显示调用 to 方法而不是调用 from 方法.
  • @DarthSpeedious:那么,如果您使用的是 C/C++,那么您为什么希望 Java 问题的答案能够奏效? CDT 和 JDT 非常不同 - Ctrl-Alt-H 可以很好地显示 Java 中的所有调用...
【解决方案2】:

您也可以使用 Ctrl+Shift+G 进行“在工作区中查找引用”

【讨论】:

    【解决方案3】:

    Search > References > Workspace

    这将在对方法的每个引用的搜索视图中构建一个结果树。热键是 Shift+Ctrl+G

    【讨论】:

      【解决方案4】:

      您可以做的另一件事是让它抛出异常(public void test() throws Exception{}),这样 Eclipse 就会在调用该方法的每个地方都放置错误(只要它不在 try/catch 块中)或者它也抛出一个异常),这种方式只有在你想在你的项目中搜索类时才有效。

      【讨论】:

      • 这是一种可怕的方式来做一些已经内置在 Eclipse 中的事情。
      【解决方案5】:

      Ctrl + Shift + G

      这显示了调用的位置以及层次结构。

      【讨论】:

        【解决方案6】:

        Eclipse 4.23(2022 年 2 月,12 年后)确实在此视图中添加了:

        Show implementations of callee

        调用层次结构视图现在可以在查看被调用者时将实现方法显示为潜在的被调用者方法。

        可以通过以下偏好控制此行为

        【讨论】:

          猜你喜欢
          • 2014-08-06
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-01-30
          • 2022-08-02
          • 2011-09-19
          • 2015-03-07
          • 2011-08-16
          相关资源
          最近更新 更多