开发者

More Intelligent Eclipse "Open Call Hierarchy"?

If I have a Java project in Eclipse, I can right-click on a method name and "Open Call Hierarc开发者_JAVA技巧hy." Suppose I have two interfaces, A and B, that both specify a method x(). Is it possible for me to have Eclipse use "Open Call Hierarchy" in a more intelligent way so as to only show calls to x() from A's while not showing those from B's?


Eclipse should already do this. If you want to test it, go to your A interface, select the x() method and run 'Open Call Hierarchy' on it. Do the same for your x() method in interface B. You should get different code locations, unless you have a class which implements both, which you should never do. Doing so won't break any compilation or execution, you will just be doubly declaring the same method signature.


I have tried this with a frequently-overridden method, toString(). When I right-click on it and choose "Open Call Hierarchy," Eclipse happily searches through my entire workspace and returns all references to that method signature.

I often rely on Eclipse to go the opposite way: I select a method invocation and press F3 to Open Declaration. But I don't think Eclipse is able to go the direction you want, from the declaration to the calling reference.


It may help to remove "Potential matches" from the search results. Try this:

Preferences -> General -> Search

And check "Ignore potential matches".

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜