让IDE跳转到重写toString()方法实现?

Gho*_*ica 3 java eclipse intellij-idea

我正在使用eclipse neon.我正在处理一个广泛的类层次结构,如:

class AbstractBase { ...

class ImplA extends AbstractBase { ...

class ImplAB extends ImplA { ...
Run Code Online (Sandbox Code Playgroud)

假设我在日食中打开了ImplAB.我知道它的一些祖先做@Override toString() - 我想跳转到那个源代码.

换句话说:给定一个继承某个方法的类X foo(),但不覆盖foo()它自己 - 是否有一种快速的方法可以跳转到foo()那个"应用"到X的那个版本?

更确切地说:假设光标位于类X中的某个位置,并且在类X内本身没有调用该方法.

解决方法是快速键入foo()源中的某个位置,然后按F3 - 但是我必须撤消该更改(是的,当您启用自动保存时,这可能是一个问题).

虽然我们在这里:如果在eclipse中这是不可能的,有人可以说IntelliJ是否具有此功能?

Moi*_*ira 6

TL; DR:您可以在简单的弹出窗口中双击Ctrl+ O以查看继承的成员.


当光标位于类名中时,可以使用类型层次结构窗口(快捷键:) F4.Child单击旁边的Show all inherited members图标:

图片


如果你想要一个更快的方法(包括一个搜索栏),只需双击Ctrl+ O,你就可以开始输入:

图片


在编辑问题时,这也通过结构工具窗口(Alt+ 7)存在于IntelliJ中:

图片