13

在我的派生类中重写一些超类方法时,我发现@Override注释非常有用。基本上,编译器会尽早检测到我的程序中的缺陷,这总是一件好事。但是为什么Java中没有@Implements注解呢?

4

4 回答 4

18

因为您也使用@Override接口定义的方法。

(是的,您是在“实现”而不是“覆盖”......但@Override两者都使用)

于 2013-02-14T06:34:01.567 回答
2

从 Java 6 开始,您可以在实现接口中定义的方法的类方法上使用 @Override

于 2013-02-14T06:43:04.663 回答
1

为了实现我们使用的接口implements,如果该接口中存在任何方法,那么我们将覆盖这些方法以提供实现。

所以只有@Override注释,因为在这两种情况下(类或接口)我们总是覆盖。

于 2013-02-14T06:41:58.893 回答
0

要实现接口,关键字已经存在:implements. 但是对于覆盖,不存在这样的关键字。@Override不是关键字,但作用相似。

于 2013-02-14T06:35:23.687 回答