为什么Java中没有@Implements注释?

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

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

(是的,你是“实施”而不是“覆盖”……但@Override用于两者)

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

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

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

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