实现接口方法的方法应该用@Override注释吗?

javadoc of the Override annotation人说:

指示方法声明旨在重写超类中的方法声明.如果使用此注释类型对方法进行注释,但未重写超类方法,则需要编译器生成错误消息.

我不认为接口在技术上是一个超类.还是这样?

Question Elaboration

推荐答案

尽可能使用@Override.它可以防止犯简单的错误.例子:

class C {
    @Override
    public boolean equals(SomeClass obj){
        // code ...
    }
}

这不会编译,因为它没有正确覆盖public boolean equals(Object obj).

实现接口(1.6 and above only)或重写超类方法的方法也将如此.

Java相关问答推荐

一般类型和kotlin阴影Java函数的问题

我们如何直接使用kerminldap服务票证来通过ldap进行身份验证并形成LDAP上下文

Selenium Java:无法访问IFRAME内部的元素

日食IDE 2024-03在Ubuntu下崩溃,导致hr_err_pid.log

OpenJDK、4K显示和文本质量

Intellij显示项目语言级别最高为12,尽管有java版本17 SDK

为什么BasicComboBoxRenderer在文本不存在或文本为空的情况下设置两次文本?

当我已经安装了其他版本的Java时,如何在Mac OSX 14.3.1上安装Java 6?

Spring @Value default无法计算表达式

@Rollback @ Transmission在验收测试中不工作

Javadoc在方法摘要中省略方法

使用PDFBox从PDF中删除图像

尽管通过中断请求线程死亡,但线程仍将继续存在

使用存储在字符串变量中的路径目录打开.pdf文件

Domino中不同的java.Protocol.handler.pkgs设置在XPages Java中导致错误

AWS Java SDK v2.x中没有setObjectAcl方法

除0错误/抱歉我的句子是PT

如何在运行docker的应用程序中获取指定的配置文件

在一行中检索字符分隔字符串的第n个值

在缺少字段时使用Jackson With Options生成Optional.Empty()