在接口实现类中,加不加@Override的区别

最近的软件构造实验经常需要设计接口,我们知道@Override注解是告诉编译器,下面的方法是重写父类的方法,那么单纯实现接口的方法需不需要加@Override呢?

定义一个类实现接口,使用idea时,声明implements之后会报错,提示需要实现接口方法,根据idea的提示自动修改,我们发现它会自动添加上@Override

把@Override注释掉,也不会报错

所以单纯实现接口的方法需不需要加@Override呢?

        答案是:如果只想单纯实现接口方法,加不加没区别,加上更好,理由如下:  

        如果不写@Override注解去直接重写方法,当基类存在与子类各种条件都符合的方法时实现覆盖;如果条件不符合时,则是当成新定义的方法使用。编译器是不会判断你是不是正确重写了父类中的方法的。如重写方法时参数与父类不同,程序是不会提示报错的。这会留下一个潜在的bug。

  如果写了@Override注解时,即说明子类要覆盖基类的方法,基类必须存在方法 (控制类型public,protected,返回值,参数列表类型)与子类方法完成一致的方法,否则会报错(找不到被Override的方法)。程序会判断你是否正确的重写了父类的对应方法。而且加上此注解后,程序会自动屏蔽父类的方法。

  所以如果想覆盖基类方法时,最好还是写上@Override注解,这样有利于编译器帮助检查错误。
        同样,当我们实现接口方法的时候,加上@Override可以帮助我们检查实现方法中的错误(控制类型public,protected,返回值,参数列表类型是否匹配),当实现类中的方法与接口方法完成一致(控制类型public,protected,返回值,参数列表类型都一样),编译器会认为你实现了接口方法,如果我们不写@Override那么编译器就不知道这个究竟是重写 还是说自己customized的方法,也就不会帮助检查错误了。

总结:
        虽然不是必须 但是还是写上吧。
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/222603.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

cfa一级考生复习经验分享系列(三)

从总成绩可以看出,位于90%水平之上,且置信区间全体均高于90%线。 从各科目成绩可以看出,所有科目均位于90%线上或高于90%线,其中,另类与衍生、公司金额、经济学、权益投资、固定收益、财报分析表现较好,目测…

芯知识 | 什么是可重复擦写(Flash型)语音芯片?

什么是可重复擦写(Flash型)语音芯片? 可重复擦写(Flash型)语音芯片是一种嵌入式语音存储解决方案,采用了Flash存储技术,使得语音内容能够被多次擦写、更新,为各种嵌入式系统提供了灵…

QEMU源码全解析 —— virtio(1)

接前一篇文章: 本文内容参考: 《趣谈Linux操作系统》 —— 刘超,极客时间 《QEMU/KVM》源码解析与应用 —— 李强,机械工业出版社 特此致谢! virtio简介 对于一台虚拟机而言,除了要虚拟化CPU和内存&…

.360勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复

导言: 在数字化时代,.360勒索病毒如影随形,威胁个人和组织的数据安全。本文将深入介绍.360病毒的特征、威胁,以及如何有效地恢复被加密的数据文件,同时提供预防措施,助您更好地保护数字资产。如不幸感染这…

原生小程序中对特定数据进行计算(wxml中wxs的使用)

背景&#xff1a;商品详情页对好评数进行统计&#xff0c;但是现在只有商品数据 使用wxs编写方法&#xff0c;module.exports导出&#xff0c;wxml中使用module名进行获取{{goodsRate.getRate(goodsInfoList)}} <wxs module"goodsRate">module.exports {get…

一站式查询热门小程序排名,助力小程序运营决策

如今小程序数量激增,竞争日益激烈,如何能在众多同类小程序中脱颖而出,提高曝光度与下载量,是每一个小程序运营者都极为关心的问题。对此,及时准确地查询自己小程序的热门排名,分析强劲对手,找出自己的短板,都是提高小程序竞争力的重要一环。那我们该如何方便快捷地查询到这些关…

Java通过documents4j和libreoffice把word转为pdf

文章目录 word转pdf的相关第三方jar说明Linux系统安装LibreOffice在线安装离线安装word转pdf验证 Java工具类代码 word转pdf的相关第三方jar说明 docx4j 免费开源、稍微复杂点的word&#xff0c;样式完全乱了&#xff0c;且xalan升级为2.7.3后会报错。poi 免费开源、官方文档少…

DNS:从域名解析到网络连接

目录 解密 DNS&#xff1a;从域名解析到网络连接的不可或缺 1. DNS的基本工作原理 1.1 本地解析器查询 1.2 递归查询 1.3 迭代查询 1.4 TLD 查询 1.5 权威 DNS 查询 2. DNS的重要性与作用 2.1 地址解析与负载均衡 2.2 网络故障处理与容错 2.3 安全性与防护 3. DNS的…

Flink 流处理流程 API详解

流处理API的衍变 Storm&#xff1a;TopologyBuilder构建图的工具&#xff0c;然后往图中添加节点&#xff0c;指定节点与节点之间的有向边是什么。构建完成后就可以将这个图提交到远程的集群或者本地的集群运行。 Flink&#xff1a;不同之处是面向数据本身的&#xff0c;会把D…

PyTorch 的 10 条内部用法

欢迎阅读这份有关 PyTorch 原理的简明指南[1]。无论您是初学者还是有一定经验&#xff0c;了解这些原则都可以让您的旅程更加顺利。让我们开始吧&#xff01; 1. 张量&#xff1a;构建模块 PyTorch 中的张量是多维数组。它们与 NumPy 的 ndarray 类似&#xff0c;但可以在 GPU …

【springboot】【easyexcel】excel文件读取

目录 pom.xmlExcelVo逐行读取并处理全部读取并处理向ExcelListener 传参 pom.xml <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.1.1</version> </dependency>ExcelVo 字段映射…

基于 Webpack5 Module Federation 的业务解耦实践

前言 本文中会提到很多目前数栈中使用的特定名词&#xff0c;统一做下解释描述 dt-common&#xff1a;每个子产品都会引入的公共包(类似 NPM 包) AppMenus&#xff1a;在子产品中快速进入到其他子产品的导航栏&#xff0c;统一维护在 dt-common 中&#xff0c;子产品从 dt-com…

c/c++ | 少量内存溢出不会影响程序的正常运行

常见 通过指针 获得 字符串“aaaaaaaaaaaaaaaaaaaaaaaaaaa” 数据&#xff0c;然后通过strcpy 拷贝到对象 char str1[5] 中&#xff0c;事实是造成了内存溢出&#xff0c;但是 &#xff0c;最后 str1 打印输出的结果 是上面的 “aaaaaaaaaaaaaaaaaaaaaaaaaaa” 这是不正常的&am…

Draw.io or diagrams.net 使用方法

0 Preface/Foreword 在工作中&#xff0c;经常需要用到框图&#xff0c;流程图&#xff0c;时序图&#xff0c;等等&#xff0c;draw.io可以完成以上工作。 official website:draw.io 1 Usage 1.1 VS code插件 draw.io可以扩展到VS code工具中。

百度搜索展现服务重构:进步与优化

作者 | 瞭东 导读 本文将简单介绍搜索展现服务发展过程&#xff0c;以及当前其面临的三大挑战&#xff1a;研发难度高、架构能力欠缺、可复用性低&#xff0c;最后提出核心解决思路和具体落地方案&#xff0c;期望大家能有所收货和借鉴。 全文4736字&#xff0c;预计阅读时间12…

产品入门第四讲:Axure动态面板

&#x1f4da;&#x1f4da; &#x1f3c5;我是默&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; ​​​​​ &#x1f31f;在这里&#xff0c;我要推荐给大家我的专栏《Axure》。&#x1f3af;&#x1f3af; &#x1f680;无论你是编程小白&#xff0c;还…

若要接收后续 Google Chrome 更新,您需使用 Windows 10 或更高版本

无差别提示&#xff0c;每次浏览器只提示&#xff0c;未提供关闭按钮 “若要接收后续 Google Chrome 更新&#xff0c;您需使用 Windows 10 或更高版本。该计算机目前使用的是 Windows 7。” 管用&#xff0c;不清楚原理 如何关闭“若要接收后续 google chrome 更新,您需使用 …

17.分割有效信息【2023.12.9】

1.问题描述 有时候我们需要截取字符串以获取有用的信息&#xff0c;比如对于字符串 “日期&#xff1a;2010-10-29”&#xff0c;我们需要截取后面的 10 个字符来获取日期&#xff0c;以便进行进一步分析。编写一个程序&#xff0c;输入一个字符串&#xff0c;然后输出截取后的…

【Spark精讲】Spark Shuffle详解

目录 Shuffle概述 Shuffle执行流程 总体流程 中间文件 ShuffledRDD生成 Stage划分 Task划分 Map端写入(Shuffle Write) Reduce端读取(Shuffle Read) Spark Shuffle演变 SortShuffleManager运行机制 普通运行机制 bypass 运行机制 Tungsten Sort Shuffle 运行机制…

springboot(ssm青年公寓服务平台 民宿预约系统Java系统

springboot(ssm青年公寓服务平台 民宿预约系统Java系统 ​​​​​​​开发语言&#xff1a;Java 框架&#xff1a;ssm/springboot vue JDK版本&#xff1a;JDK1.8&#xff08;或11&#xff09; 服务器&#xff1a;tomcat 数据库&#xff1a;mysql 5.7&#xff08;或8.0&a…