Java的@override有什么用途?

6
自Java 1.5以来,该注释已被纳入语言中,用于覆盖超类方法的方法。
现在,使用此注释的方法与不使用它的方法有什么区别?这只是一种惯例吗?
假设,显然,两种方法都覆盖其超类的方法...

请参见:https://dev59.com/4HVD5IYBdhLWcg3wGHau - Alex
1个回答

7

@Override创建了一个编译时检查,以确保方法被正确地覆盖。这非常有用,可以确保在尝试覆盖方法时不会出现愚蠢的签名问题。

它不仅使编译器检查,还记录了开发人员的意图。

如果你覆盖了一个方法,但是从类型本身没有使用它,那么后来阅读代码的人可能就不知道其目的了。注释解释了它的目的。

一个好的IDE会有帮助性地标记任何没有@Override的覆盖方法,所以两者的组合将有助于确保你正在做你想做的事情。

此外,它还提高了可读性。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接