技术问 - 重载和重写有什么区别

方法重载:在同一个类中有多个同名的方法,但这些方法有不同的参数(个数、类型、顺序)。它是一种编译时多态。

方法重写:子类函数覆盖父类函数,并对其重写,以达到不同的作用。它是一种运行时多态

  • 子类的重写犯法和父类中的方法有相同的函数名、参数、返回值、所抛出的异常

  • 父类中被重写的方法不能是private的

重写和重载的不同:

  • 重写是子类与父类之间的关系,重载是一个类中不同方法之间的关系

  • 重写要求参数列表相同,重载要求参数列表不同

  • 重写关系中,调用方法体是根据对象的类型来决定的,重载是根据调用时实参表与形参表来选择方法体的

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、方法的重写(Override)(方法覆盖) (1)重写介绍: java SE5增加@Override注解,并不...
    Hughman阅读 5,261评论 0 3
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,907评论 1 32
  • 重写和重载区别 重写方法的规则如下: 参数列表:必须与被重写方法的参数列表完全匹配。 返回类型:必须与超类中被重写...
    指尖的跳跃阅读 4,235评论 0 2
  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 8,076评论 2 9
  • 一:java概述: 1,JDK:Java Development Kit,java的开发和运行环境,java的开发...
    慕容小伟阅读 5,845评论 0 10

友情链接更多精彩内容