更智能的Eclipse“Open Call Hierarchy”?

时间:2011-01-10 18:18:53

标签: java eclipse call-hierarchy

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

3 个答案:

答案 0 :(得分:6)

Eclipse应该已经这样做了。如果要测试它,请转到 A 界面,选择 x()方法并在其上运行“打开调用层次结构”。对接口 B 中的 x()方法执行相同操作。您应该获得不同的代码位置,除非您有一个实现两者的类,您永远不应该这样做。这样做不会破坏任何编译或执行,你只需要加倍声明相同的方法签名。

答案 1 :(得分:3)

我用经常重写的方法toString()尝试了这个。当我右键单击它并选择“打开调用层次结构”时,Eclipse会愉快地搜索整个工作区并返回对该方法签名的所有引用。

我经常依赖Eclipse以相反的方式:我选择一个方法调用并按F3来打开声明。但是我不认为Eclipse能够从声明到调用引用去你想要的方向。

答案 2 :(得分:2)

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

Preferences -> General -> Search

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