首页 > 编程语言 >java中overload与override的区别

java中overload与override的区别

时间:2022-09-26 09:58:22浏览次数:73  
标签:java 子类 overload 重载 override 父类 方法

1、综述
  重写(Override)也称覆盖,它是父类与子类之间多态性的一种表现,而重载(Overload)是一个类中多态性的一种表现。 override从字面就可以知道,它是覆盖了一个方法并且对其重写,以求达到不同的作用。overload它是指我们可以定义一些名称相同的方法,通过定义不同的输入参数来区分这些方法,然后再调用时,VM就会根据不同的参数样式,来选择合适的方法执行。

2、override(重写,覆盖)
(1)方法名、参数、返回值相同。
(2)子类方法不能缩小父类方法的访问权限。
(3)子类方法不能抛出比父类方法更多的异常(但子类方法可以不抛出异常)。
(4)存在于父类和子类之间。
(5)方法被定义为final不能被重写。
(6)被覆盖的方法不能为private,否则在其子类中只是新定义了一个方法,并没有对其进行覆盖。

3、overload(重载,过载)
(1)参数类型、个数、顺序至少有一个不相同。
(2)不能重载只有返回值不同的方法名。
(3)针对于一个类而言。
(4)不能通过访问权限、返回类型、抛出的异常进行重载;
(5)方法的异常类型和数目不会对重载造成影响;

4、override应用:
(1)最熟悉的覆盖就是对接口方法的实现,在接口中一般只是对方法进行了声明,而我们在实现时,就需要实现接口声明的所有方法。
(2)除了这个典型的用法以外,我们在继承中也可能会在子类覆盖父类中的方法。

5、总结
  override是在不同类之间的行为,overload是在同一个类中的行为。

   

标签:java,子类,overload,重载,override,父类,方法
From: https://www.cnblogs.com/rpbszy/p/16729838.html

相关文章

  • JavaScript 数组常用方法大全
    Array对象所有方法concat()方法合并多个数组,返回一个新数组join() 方法将数组合并为字符串,用指定的字符分割pop()方法删除成员(从后) 并返回该被删......
  • Mybatis的mapper与Java实体类的关系
    Mybatis当中有一个重要概念:ORM(ObjectRelationMapping),对象关系映射。也就Java实体类的属于与关系型数据库column的对应关系。我们在mybatis的mapper.xml当中用#{}来......
  • Mybatis的SqlSession把Java Map作为参数
    Mybatis的以下方法,可以有一个参数,也可以有两个参数。如果有两个参数,则第一个参数为SQL语句;第二个参数是Object。sqlSession.insert("insertCar",carMap);以上的"inser......
  • 秀真的学习日记:学Java的第一天
    秀真的学习日记:学Java的第一天快捷键ctrl+A=全选ctrl+X=剪切ctrl+C=复制ctrl+Z=撤销ctrl+V=粘贴ctrl+S=......
  • 计算机毕设选题推荐 springboot+vue二手车交易平台 ssm+vue二手车拍卖系统 二手车商城
    ......
  • javaScript-3常用函数
      <!DOCTYPEhtml><html><head><table>常用函数</table><metacharset="utf-8"></head><body><h1>Array数组</h1>原始数据:<sapnid="originalAr......
  • Java读文件
    publicclassFileServer{publicstaticvoidmain(String[]args){try{Filefile=newFile("data.txt");S......
  • Java死锁
    publicclassDeadLockDemo{privatestaticfinalObjectHAIR_A=newObject();privatestaticfinalObjectHAIR_B=newObject();publicstaticv......
  • java 枚举的使用
    一、枚举的介绍,以如下的枚举为例子进行介绍enumSize{Small,Medium,Large,ExtraLarge;}如上的声明定义了一个类,它有4个实例不可能再构造出新的对象,即:Sizesi......
  • JadConfig 注解驱动的java 配置管理包
    JadConfig是graylog开源的一个基于注解驱动的java配置管理包,graylogserver对于配置的管理就是使用了此包JadConfig使用比较简单,但是功能还是很强大的,配置包含了校......