IntelliJ 是否可以将 @Overrides 添加到特定接口的所有方法?

发布于 2024-12-29 10:20:26 字数 617 浏览 2 评论 0原文

我创建了一个接口,包含大约 30 个方法并在 30 个类中实现。

我想将 @Override 添加到每个实现中,但我不想手动完成。

IntelliJ 如何帮助我?

界面如下:

public interface PreviewObjectTests {
    void testGetName();
    void testGetType();
    //... 30 similar methods
}

实现代码:

public class PreviewObjectAccountTest implements PreviewObjectTests {

    //I want to add @Override here!
    @Test public void testGetName() {
        assertThat(...);
    }

    //I want to add @Override here!
    @Test public void testGetType() {
        assertThat(...);
    }

    //...30 similar methods 

}

I have created an interface, with about 30 methods and implemented in 30 classes.

I want to add @Override to each of the implementations, but i would like not to do it by hand.

How can IntelliJ help me?

interface looks like this:

public interface PreviewObjectTests {
    void testGetName();
    void testGetType();
    //... 30 similar methods
}

implementation code:

public class PreviewObjectAccountTest implements PreviewObjectTests {

    //I want to add @Override here!
    @Test public void testGetName() {
        assertThat(...);
    }

    //I want to add @Override here!
    @Test public void testGetType() {
        assertThat(...);
    }

    //...30 similar methods 

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

半夏半凉 2025-01-05 10:20:26

使用 Alt+Enter 意图即可轻松完成,然后按向右箭头进入子菜单:

修复全部

Easily done with Alt+Enter intention, then press Right arrow for the sub-menu:

Fix all

相守太难 2025-01-05 10:20:26

对于 IntelliJ:

  1. 检查您是否在“首选项”->“选项”中选中了“缺少 @Override 注释”项目设置->检查->继承问题。
  2. 使用分析->检查代码
  3. 查找继承问题 -> “检查配置文件结果”窗口内缺少 @Override 注释。
  4. 应用修复“添加@Override注释”
    应用修复“添加@Override注释”

For IntelliJ:

  1. Check if you have "Missing @Override annotation" checked inside Preferences -> Project Settings -> Inspections -> Inheritance issues.
  2. Use Analyze -> Inspect Code
  3. Find Inheritance issues -> Missing @Override annotation inside "Results for Inspection Profile" window.
  4. Apply fix "Add @Override annotation"
    Apply fix "Add @Override annotation"
静若繁花 2025-01-05 10:20:26

我找到了一种使用简单的查找/替换工具来完成此操作的方法。

  1. 首先,我更改了方法名称以引发实现该接口的所有文件进行更改
  2. 然后我创建了一个简单的查找/替换以仅在更改的文件中查找。

Intellij Add @override 仅用于更改文件中的测试

这适用于我的特定情况,因为实际上没有任何其他方法类文件。我假设如果我在属于其他接口的文件中有很多方法,这会更疯狂

I found a way to do it with the simple find/replace tool.

  1. First i changed a method name to provoke all files implementing the interface to change
  2. Then i created a simple find/replace to look only in changed files.

Intellij Add @override for tests in changed files only

This works in my particular case, because there were not really any other methods in the class files. I will assume this will be a bit more crazy if i had a lot of methods in the files belonging to other interfaces

沧笙踏歌 2025-01-05 10:20:26

它不是日食或特定想法。它的编译器特定以及您遵守的合规性。
在日食中它是 1.6 或更高。
在想法上我相信它是 1.5 或更高。

在上述情况下,相应的 IDE 会自动检查。

Its not eclipse or idea specfic. Its compiler specfic and what compliance you adhere to.
In eclipse its 1.6 or higher.
And In idea I believe its for 1.5 or higher.

In the above cases it will bechecked automatically by respective IDEs.

长安忆 2025-01-05 10:20:26

对于 Eclipse(在 Mars.2 上测试):

窗口/首选项(或项目属性)
Java/编译器
错误/警告
注释
缺少 @Override 注释 - 设置为错误(或警告)

重建工作区后,在“标记”视图中,右键单击其中一个错误,“快速修复”(Ctrl+1),然后应该会显示所有错误。选择全部并应用修复。

这使我能够正确注释数百个类......

For Eclipse (tested on Mars.2):

Window / Preferences (or Project Properties)
Java / Compiler
Error/Warnings
Annotations
Missing @Override annotation - Set to Error (or Warning)

After the rebuild workspace, in the Markers view, right click on one of the errors, Quick Fix (Ctrl+1) and all the errors should appear. Select all and apply the fix.

This worked for me to properly annotate a few hundreds of classes...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文