原文链接http://zhhll.icu/2020/11/11/java%E5%9F%BA%E7%A1%80/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1/%E9%87%8D%E8%BD%BD%E4%B8%8E%E9%87%8D%E5%86%99/

重载与重写

java中有overload重载和override重写

重载

重载是指一个类中有多个名称相同但是参数列表不同的方法(参数列表不同是指参数个数或类型不同)

重写

重写是指子类中的方法与父类中的某个方法名称和参数完全相同,通过子类创建的实例对象将父类中的这个方法覆盖掉,是面向对象多态性的一种表现。

子类重写父类的方法

  • 只能比父类抛出更少的异常,或者抛出父类抛出异常的子异常

  • 子类方法的访问权限只能比父类的更大,如果父类方法为private,那么相当于子类中增加了一个全新的方法

必须符合以上两点的原因是因为多态的机制,在使用子类对象指向父类引用时,调用父类的方法被认为是合法的,但是如果子类的访问权限比父类小,或者子类抛出的异常比父类多,这在编译上是不允许的,与多态机制是矛盾的

由于本身的博客百度没有收录,博客地址http://zhhll.icu

最新文章

  1. 关于实现一个基于文件持久化的EventStore的核心构思
  2. LTE Module User Documentation(翻译8)——核心网(EPC)
  3. Nginx作为静态内容服务器(Windows环境)
  4. 《Genesis-3D开源游戏引擎完整实例教程-2D射击游戏篇05:角色中弹》
  5. 【UNIX】select、poll、epoll学习
  6. Infinite Scroll–无限分页
  7. OceanBase中主备Rootserver如何管理切换
  8. C++ 可以多个函数声明
  9. getResources提取资源文件
  10. BootStrapTable获取选中数据值并传参至父页面
  11. [THUSC2017]巧克力[斯坦纳树、随机化]
  12. hiredis安装及测试
  13. ros 安装c++编译的可执行文件
  14. Jump Game - LeetCode
  15. 关于CUDA5之后cutil.h不可用的问题
  16. info.plist文件里面添加描述 -> 配置定位,相册等
  17. # mysqlbinlog mysql-bin.000004 mysqlbinlog: unknown variable 'default-character-set=utf8'
  18. Objective-C适用C数学函数 <math.h>
  19. Mac安装composer爬过的坑
  20. [OS] 死锁相关知识点以及银行家算法详解

热门文章

  1. day105:Mofang:设置页面初始化&更新头像/上传头像&设置页面显示用户基本信息
  2. luogu P6835 概率DP 期望
  3. Kubernetes Python Client 初体验之Deployment
  4. 传输层-Transport Layer(上):传输层的功能、三次握手与四次握手、最大-最小公平、AIMD加法递增乘法递减
  5. qq获取验证码接口
  6. Error while instantiating 'org.apache.spark.sql.hive.HiveSessionStateBuilder': —— windows 开发环境使用spark 无法访问hdfs 问题解决
  7. 未雨绸缪,数据保护之NBU介质备份
  8. 图解Janusgraph系列-图数据底层序列化源码分析(Data Serialize)
  9. 网络编程-python实现-UDP(1.1.2)
  10. YZMCMS V5.3后台 SSRF