在 IntelliJ IDEA 中按 Ctrl 并单击打开声明/实现之间进行选择

Posted

技术标签:

【中文标题】在 IntelliJ IDEA 中按 Ctrl 并单击打开声明/实现之间进行选择【英文标题】:Choose between open declaration/implementation on Ctrl + click in IntelliJ IDEA 【发布时间】:2015-01-22 08:25:01 【问题描述】:

详情:

IDE:IntelliJ IDEA 14 操作系统::Windows 7

如果我想导航到方法的声明,我可以选择以下方法之一:

Ctrl + 左键单击 右键单击>转到>声明 按 Ctrl + B

如果我想导航到方法的实现,我可以选择以下方法之一:

Ctrl + Alt + 左键单击 右键单击 > 转到 > 实施 按 Ctrl + Alt + B

Eclipse 中,如果我按下 Ctrl 并且鼠标悬停在某个方法上,则会出现一个弹出窗口,我可以选择要做什么(转到实施/声明)。如果我按“左键单击”( Ctrl 仍然按下),将选择第一个选项。

如何在 IntelliJ IDEA 中实现相同/相似的行为?

【问题讨论】:

Ctrl + Alt + 左键单击是我想要的,谢谢 ;) 【参考方案1】:

对此没有内置选项。您需要配置一个自定义快速列表来执行此操作。

    打开“设置”对话框并转到“快速列表”(在 IDEA 14 的“外观和行为”下) 点击中间窗格右侧的添加按钮 为您的列表命名 单击最右侧窗格右侧的添加按钮(其中显示“无操作”) 添加“前往申报”操作(主菜单 > 导航 > 前往申报) 添加“转到实施”操作(主菜单 > 导航 > 转到实施) 点击应用 转到设置中的键盘映射 在“快速列表”节点下,找到您刚刚创建的快速列表并将快捷方式(键盘或鼠标)映射到它。当然,您可以重新映射 Go to Declaration 或 Go to Implementation(s) 操作使用的快捷方式之一 单击“确定”关闭设置并尝试一下。

请注意,在打开的快速列表中,每个操作旁边都有数字供您快速选择。

编辑: 添加最终快速列表的屏幕截图以提高清晰度

【讨论】:

即使这不是我想要的,我也接受了你的回答,因为这是一个有趣的解决方案,如果我们想要实现类似的功能,它可能是 IntelliJ 可以提供的最好的解决方案蚀。谢谢! 我正要评论说这个答案不再适用; intellij 提供了一个弹出窗口,可以在跳转到接口的多个实现之间进行选择。然后我意识到这个问题要求在声明和实现之间进行选择。在我的项目中,声明是菜单中列出的实现之一,但在其他项目中,我认为这可能不是真的,所以这是一个很好的方法。 macOS 用户:我已经自定义了我的键盘映射以使用 force touch 去实现:ibb.co/xDP9739【参考方案2】:

我一直在寻找同样的东西,因为我在 Eclipse 中也习惯了。尽管如此,在 99% 的情况下,我还是去执行。如果您也是这种情况,您可以考虑更改 IntelliJ 中的 Ctrl+单击快捷方式:

打开文件 → 设置... → 键盘映射 搜索“实施”,并在列表中识别项目“主菜单 → 导航 → 实施” 右键单击该项目并选择“添加鼠标快捷方式” 通过在窗口上单击 Ctrl+左键来添加 Ctrl+单击快捷方式 点击确定按钮时,您有两个选择: 删除现有快捷方式(打开声明) 保留现有快捷方式:在这种情况下,当使用 Ctrl+单击时,声明和实现都将打开(至少在它们位于不同文件中时)

我知道这个答案来得太晚了 2 年,但希望它可以帮助其他人?

编辑: 当您想要导航到超类的声明时,此快捷方式也适用。因此,我上面首先声明的“99%”下降了一点。 我添加了 ctrl + 右键单击​​作为进行声明的快捷方式(与其他快捷方式没有冲突 - 但您需要一个至少有两个按钮的鼠标......)。

【讨论】:

感谢您的帮助!我使用“go to implementation”比“go to declaration”更频繁,所以我将“ctrl + click”分配给实现,然后将“ctrl + alt + click”分配给声明......【参考方案3】:

如果您选择方法并点击Ctrl+T,它将显示方法的实现。您可以单击选项导航到该实现的方法。希望这会有所帮助。

【讨论】:

【参考方案4】:

我的 IntelliJ (2016.2) 将方法的声明(在 php 接口中)显示为实现弹出窗口中的实现之一,所以也许您现在可以从实现弹出窗口中完成所有这些操作。

【讨论】:

【参考方案5】:

在 mac 上,您可以使用命令 + 选项 + 单击打开实现。右键单击该方法并选中“转到”以获取您可能需要的其他选项和快捷方式。

【讨论】:

以上是关于在 IntelliJ IDEA 中按 Ctrl 并单击打开声明/实现之间进行选择的主要内容,如果未能解决你的问题,请参考以下文章

Intellij Idea怎么实现,Eclipse中的ctrl+Y的效果

使用JUnit配置IntelliJ IDEA以进行单元测试

IntelliJ IDEA 2018.2 显示代码完成 ctrl+空格提示并在 0.5 秒后消失

在 IntelliJ IDEA 中将多个项目复制并粘贴到剪贴板

Intellij IDEA 自动显示 javadoc

IntelliJ IDEA学习之三IntelliJ IDEA常用快捷键