You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在IntelliJ社区版中识别实现Action但不继承AbstractAction的类?

在IntelliJ(社区版)中筛选「实现Action接口但未继承AbstractAction」的类

当然可以搞定!IntelliJ IDEA(包括免费的社区版)的**结构搜索(Structural Search)**功能正好能满足这种精准的组合筛选需求,下面是一步步的操作指南:

步骤1:打开结构搜索面板

你可以用快捷键快速唤起:

  • Windows/Linux:按 Ctrl+Shift+A
  • Mac:按 Cmd+Shift+A
    在弹出的搜索框里输入「Structural Search」,选中对应的选项打开面板。也可以通过菜单栏路径:Edit > Find > Search Structurally 打开。

步骤2:创建自定义类搜索模板

  1. 点击面板左上角的「+」按钮,选择「New Template」,然后选「Class」作为模板类型。
  2. 在模板编辑区输入以下代码,用来匹配实现Action接口的类:
class $Class$ implements Action {
}

步骤3:添加「不继承AbstractAction」的过滤规则

  1. 选中模板里的$Class$变量(就是那个带美元符号的占位符),点击面板下方的「Edit Variables」按钮。
  2. 在弹出的变量设置窗口中:
    • 找到「Extends」选项,点击右侧的「...」按钮,输入 !AbstractAction(感叹号代表「排除」),表示这个类不能继承AbstractAction。
    • 确认「Implementing」选项设置为Action,确保类必须实现该接口。
    • 可以勾选「Apply constraints in hierarchy」,让搜索覆盖项目里的所有类层次。
  3. 点击「OK」保存变量设置。

步骤4:执行搜索并查看结果

点击面板右下角的「Find」按钮,IntelliJ就会扫描整个项目,把所有符合「实现Action接口但未继承AbstractAction」条件的类列出来。

额外小技巧

  • 如果以后经常需要这个搜索,可以点击面板左上角的「保存」按钮,给模板起个名字(比如「ActionImplWithoutAbstract」),下次直接调用就行。
  • 要是搜索结果太杂,还能在变量设置里添加更多过滤条件,比如限定类的访问修饰符、所在包路径等。

内容的提问来源于stack exchange,提问作者GhostCat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 08:27:24