如果直接或间接地从另一个方法调用某个方法,如何在Eclipse中查找?

如果可以从另一个方法中直接或间接地调用或访问某些方法,如何在Eclipse中查找?

假设我想重构A.one() ,这可能会受到D.four()D.four()负面影响。 因此,我想知道是否可以从A.one()调用D.four() A.one() 。 我可以看到使用Call Hierarchy从A.one()调用哪些方法。 我可以导航调用树并最终发现A.one()调用B.two()调用C.three()调用D.four()

在Eclipse中是否有办法以某种方式自动进行此搜索?

PS。 “调用层次结构对话框”中有一个“filter…”选项,但它只隐藏匹配的名称。

这是您(@lexicore)找到的方式的修改版本,其中涉及的按钮打孔明显减少(我的粗体更改):

  • 打开A.one(),显示Callee层次结构的调用层次结构。
  • 选择根节点,然后按*键直到整个树展开。 请注意,您只需要在根节点上按*。 这将“很快”扩展整棵树。
  • 单击鼠标右键,复制扩展层次结构。
  • 粘贴到文本文件中。
  • 全文搜索D.four()。

笔记

  • 键*将所有未展开的叶节点扩展到一个级别。
  • 键+和 – 用于扩展和关闭所选节点。
  • 我在瑞典语键盘上试过这个,其中*位于与美国键盘不同的位置,但希望Eclipse不会关心它。

更新

这是一些文档 ,其中提到了*键。

我们刚遇到了一条路。 不是真的“自动”,涉及很多->按钮冲孔。 🙂

  • 打开A.one() ,显示Callee层次结构的调用层次结构。
  • 从根开始,通过多次单击->按钮展开整个树。 真的很多次。 🙂
  • 单击鼠标右键,复制扩展层次结构。
  • 粘贴到文本文件中。
  • 全文搜索D.four()

我希望有更好的方法不涉及打击->按钮。

我所知道的最简单的方法是手动导航到D.four() ,在该方法上使用Call Hierarchy ,看看A.one()是否包含在层次结构中。