【问题标题】:More Intelligent Eclipse "Open Call Hierarchy"?更智能的 Eclipse “开放调用层次结构”?
【发布时间】:2011-01-10 18:18:53
【问题描述】:

如果我在 Eclipse 中有一个 Java 项目,我可以右键单击方法名称并“打开调用层次结构”。假设我有两个接口 A 和 B,它们都指定了一个方法 x()。我是否可以让 Eclipse 以更智能的方式使用“Open Call Hierarchy”,以便只显示来自 A 的 x() 调用而不显示来自 B 的调用?

【问题讨论】:

    标签: java eclipse call-hierarchy


    【解决方案1】:

    Eclipse 应该已经这样做了。如果你想测试它,进入你的A界面,选择x()方法然后运行'Open Call Hierarchy'。对接口 B 中的 x() 方法执行相同的操作。你应该得到不同的代码位置,除非你有一个实现两者的类,你不应该这样做。这样做不会破坏任何编译或执行,您只会双重声明相同的方法签名。

    【讨论】:

    • 现在我开始迷惑自己了。当我实际尝试虚拟示例时,它的行为与您解释的一样,但是具有更复杂层次结构的真实示例似乎会遭受我所描述的现象的影响。
    【解决方案2】:

    我已经用一个经常被覆盖的方法 toString() 尝试了这个。当我右键单击它并选择“Open Call Hierarchy”时,Eclipse 会愉快地搜索我的整个工作区并返回对该方法签名的所有引用。

    我经常依靠 Eclipse 走相反的路:我选择一个方法调用,然后按 F3 键打开声明。但我不认为 Eclipse 能够按照您想要的方向发展,从声明到调用引用。

    【讨论】:

      【解决方案3】:

      从搜索结果中删除“潜在匹配”可能会有所帮助。试试这个:

      Preferences -> General -> Search

      并勾选“忽略潜在匹配”。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-03-10
        • 2013-03-12
        • 1970-01-01
        • 2012-07-18
        • 2012-01-09
        • 1970-01-01
        • 1970-01-01
        • 2015-03-10
        相关资源
        最近更新 更多