全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Java重写与重载之间的区别

重写(Override)

重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!

重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。

重写方法不能抛出新的检查异常或者比被重写方法申明更加宽泛的异常。例如: 父类的一个方法申明了一个检查异常 IOException,但是在重写这个方法的时候不能抛出 Exception 异常,因为 Exception 是 IOException 的父类,只能抛出 IOException 的子类异常。

方法的重写规则

  • 参数列表必须完全与被重写方法的相同;
  • 返回类型必须完全与被重写方法的返回类型相同;
  • 访问权限不能比父类中被重写的方法的访问权限更低。例如:如果父类的一个方法被声明为public,那么在子类中重写该方法就不能声明为protected。
  • 父类的成员方法只能被它的子类重写。
  • 声明为final的方法不能被重写。
  • 声明为static的方法不能被重写,但是能够被再次声明。
  • 子类和父类在同一个包中,那么子类可以重写父类所有方法,除了声明为private和final的方法。
  • 子类和父类不在同一个包中,那么子类只能够重写父类的声明为public和protected的非final方法。
  • 重写的方法能够抛出任何非强制异常,无论被重写的方法是否抛出异常。但是,重写的方法不能抛出新的强制性异常,或者比被重写方法声明的更广泛的强制性异常,反之则可以。
  • 构造方法不能被重写。
  • 如果不能继承一个方法,则不能重写这个方法。

重载(Overload)

重载(overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。

每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表。

只能重载构造函数

重载规则

  • 被重载的方法必须改变参数列表(参数个数或类型或顺序不一样);
  • 被重载的方法可以改变返回类型;
  • 被重载的方法可以改变访问修饰符;
  • 被重载的方法可以声明新的或更广的检查异常;
  • 方法能够在同一个类中或者在一个子类中被重载。
  • 无法以返回值类型作为重载函数的区分标准

区别点 重载方法 重写方法
参数列表 必须修改 一定不能修改
返回类型 可以修改 一定不能修改
异常 可以修改 可以减少或删除,一定不能抛出新的或者更广的异常
访问 可以修改 一定不能做更严格的限制(可以降低限制)

总结

方法的重写(Overriding)和重载(Overloading)是java多态性的不同表现,重写是父类与子类之间多态性的一种表现,重载是一类中多态性的一种表现。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# Java  # 重写  # 重载  # Java 重写与重载方法与区别详解  # java 重载(overload)与重写(override)详解及实例  # 实例分析java中重载与重写的区别  # Java方法重载和重写原理区别解析  # Java重写(Override)与重载(Overload)区别原理解析  # Java基础之重载(Overload)与重写(Override)详解  # JAVA中重写(Override)与重载(Overload)的相关示例  # 子类  # 抛出  # 类中  # 自己的  # 返回值  # 访问权限  # 包中  # 是在  # 在同一个  # 就不能  # 或删除  # 在一  # 能做  # 则可  # 可以根据  # 更低  # 可以减少  # 有一个  # 无二 


相关文章: IOS倒计时设置UIButton标题title的抖动问题  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  网站插件制作软件免费下载,网页视频怎么下到本地插件?  网站制作公司排行榜,四大门户网站排名?  视频网站app制作软件,有什么好的视频聊天网站或者软件?  如何选择可靠的免备案建站服务器?  如何使用Golang安装API文档生成工具_快速生成接口文档  如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法  如何快速生成橙子建站落地页链接?  如何有效防御Web建站篡改攻击?  建站之星上传入口如何快速找到?  网站制作大概多少钱一个,做一个平台网站大概多少钱?  清除minerd进程的简单方法  建站之星与建站宝盒如何选择最佳方案?  ,想在网上投简历,哪几个网站比较好?  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  济南网站建设制作公司,室内设计网站一般都有哪些功能?  建站之星在线客服如何快速接入解答?  如何通过宝塔面板实现本地网站访问?  如何在万网自助建站中设置域名及备案?  微信小程序 五星评分(包括半颗星评分)实例代码  深圳 网站制作,深圳招聘网站哪个比较好一点啊?  湖北网站制作公司有哪些,湖北清能集团官网?  如何快速搭建二级域名独立网站?  Bpmn 2.0的XML文件怎么画流程图  行程制作网站有哪些,第三方机票电子行程单怎么开?  制作网站的基本流程,设计网站的软件是什么?  定制建站策划方案_专业建站与网站建设方案一站式指南  建站之星CMS五站合一模板配置与SEO优化指南  如何做网站制作流程,*游戏网站怎么搭建?  如何通过cPanel快速搭建网站?  利用JavaScript实现拖拽改变元素大小  如何选择建站程序?包含哪些必备功能与类型?  建站之星如何实现PC+手机+微信网站五合一建站?  制作网站的软件免费下载,免费制作app哪个平台好?  招贴海报怎么做,什么是海报招贴?  广东专业制作网站有哪些,广东省能源集团有限公司官网?  在线教育网站制作平台,山西立德教育官网?  大连网站设计制作招聘信息,大连投诉网站有哪些?  如何通过山东自助建站平台快速注册域名?  临沂网站制作公司有哪些,临沂第四中学官网?  如何获取PHP WAP自助建站系统源码?  c# Task.ConfigureAwait(true) 在什么场景下是必须的  如何挑选高效建站主机与优质域名?  如何快速建站并高效导出源代码?  如何在Ubuntu系统下快速搭建WordPress个人网站?  如何获取上海专业网站定制建站电话?  如何选择靠谱的建站公司加盟品牌?  香港服务器租用费用高吗?如何避免常见误区? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。