使用Java@Override批注的最佳实践是什么?为什么?

@Override注释标记每个被覆盖的方法似乎有点过头了.是否有某些编程情况需要使用@Override,以及其他不应该使用@Override的情况?

推荐答案

每次你为了两个好处重写一个方法时都要使用它.这样做,您就可以利用编译器判断来确保您实际上正在重写一个您认为是的方法.这样,如果您犯了一个常见的错误:拼写错误的方法名或与参数不正确匹配,您将收到警告,您的方法实际上并没有像您认为的那样重写.其次,它使您的代码更容易理解,因为当方法被覆盖时,代码更容易理解.

此外,在Java1.6中,您可以使用它来标记方法何时实现接口以获得相同的好处.我认为最好有一个单独的注释(比如@Implements),但总比没有好.

Java相关问答推荐

使用json参数通过单击jSP文件中的按钮来运行server时出现问题

如何在返回bigint []值的子查询中使用any?

我找不到&Quot;配置&的位置

为什么Java Annotation接口覆盖对象类中的方法

什么是Java原子属性的正确getter和setter

测试期间未执行开放重写方法

PDFBox未加载内容

如何在Cosmos DB(Java SDK)中增加默认响应大小

如何使用log4j2(Json)记录由";异常引起的所有";?

如何在JUNIT测试中覆盖ExecutorService?

为什么StandardOpenOption.CREATE不能通过Ubuntu在中小企业上运行?

我可以在@Cacheable中使用枚举吗

如何获得凌空cookies ,并设置它在下一个请求- android

从Spring6中的JPMS模块读取类时出现问题

如何在Record Java中使用isRecord()和RecordComponent[]?

在单例类上获取Java锁,了解原因

Intellij 2023 IDE:始终在顶部显示菜单栏

org.springframework.web.HttpRequestMethodNotSupportedException:请求方法';帖子';不支持

使用StringBuilder和append方法创建字符串时Java字符串内部方法的问题

Spring Boot Security-每个端点都被403禁止,Spring记录一个BasicErrorController#错误(HttpServlet请求)