我们应该@Override接口的方法实现吗?

Benno Richters:

实现接口方法的方法是否应带有注释@Override

注释JavadocOverride说:

指示方法声明旨在覆盖超类中的方法声明。如果使用此注释类型对方法进行注释但不覆盖超类方法,则要求编译器生成错误消息。

我认为接口从技术上讲不是超类。还是?

Question Elaboration

jjnguy:

您应该尽可能使用@Override。它可以防止犯下简单的错误。例:

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

由于无法正确覆盖,因此无法编译public boolean equals(Object obj)

实现接口(仅限1.6及更高版本)或重写Super类的方法的方法也是如此。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我们应该忽略.python-version文件吗?

我们可以在Java中创建接口的实例吗?

为什么我们应该将接口方法声明为公共方法?

我们需要依赖注入接口吗?

我们可以同时使用接口和事件吗?

我们应该使用HashSet吗?

我们是否应该对接口中的默认方法进行单元测试(Java 8)?

我们可以在PowerShell脚本中实现.NET接口吗?

我们应该在霍夫曼编码方法中包含空格吗

我们应该记住关闭吗?

我们什么时候应该实现__deepcopy__?

我们如何对AWS CDK代码进行单元测试?我们应该吗?

我们如何使用不同接口的默认实现?

为什么我们需要实现接口以提供某些功能,而不是仅定义方法而不实现接口?

我们可以@Override派生类中超类的公共方法吗?

AngularJS-我们应该在服务中包装$ http方法吗

我们应该始终绑定我们的SQL语句吗?

如果我们在程序中使用延迟,我们应该使用cron吗?

我们可以用具有扩展方法的接口替换抽象类吗?

为什么我们在实现派生接口的类上重新实现派生接口的父接口

我们可以在同一个对象中实现多个 QtRO 接口吗?

我们应该将 addEvenetListener 方法视为一个循环吗?

当接口的方法没有任何实现我们必须每次都覆盖它们时,使用接口的目的是什么?

我们如何创建一个我们应该实现的对象的“骨架类型”?

我们可以在接口内使用 lambda 表达式作为接口内的默认或静态实现吗?

创建类时,我们应该在 Ruby 中添加 attr_* 方法吗?

我们应该只向对象的原型添加方法吗?

我们可以在打字稿中实现反应状态属性的接口吗?

我们可以在 Go 中使用带有接口方法的类型断言吗?