按住 Ctrl 键单击将转到我单击的方法的声明。对于具有一个实现的接口,我怎么能直接转到该实现?

2022-09-01 02:52:31

我经常需要调试java代码,这些代码是为了让有一个接口和该接口的一个实现而编写的。

例如,将有一个接口Foo,其中只有一个名为FooImpl的实现。在下面的代码中,如果我按住 Ctrl 键单击 doThings,它将跳转到 Foo.java当我真正想要转到 FooImpl 时.java查看实现。

public void doStuff(Foo foo) {
    foo.doThings();
}   

当我最终到达界面时,我必须使用ctrl-shift-r来打开FooImpl。如果我能在doThings上做一些舔ctrl-alt-click并最终进入FooImpl.java的东西,那就太好了。如果工作区中有多个实现,那么也许它会弹出一个框,告诉我它们是什么。

Eclipse中是否有插件或现有函数可以做到这一点?我知道我可以去Foo.java然后获取层次结构并转到实现,但是当一个接口只有一个实现时,这比必要的点击次数要多。


答案 1
  1. 将光标移动到方法调用
  2. Ctrl + T
  3. 选择所需的实施
  4. Enter

如果有多个实现器,这也有效。


答案 2

转到“窗口>首选项”>“常规>编辑器”>“文本编辑器”>超链接“,然后取消选中”打开声明”。Preferences screenshot

从现在开始,当您将鼠标悬停在方法名称上时,将显示以下弹出窗口。只需单击方法名称,就会打开实现(如果存在多个实现,则为“类型实现 XXX”框)。Ctrl

Popup box

您仍可以通过按 来使用“打开声明”功能。F3


推荐