Java重载与重写

一、重载

定义:在同一个类中,可以存在一个以上的同名方法,只要它们的参数个数或参数类型不同
简记为“两同一不同”同一个类,同一方法名,不同参数列表
注意:方法的权限修饰符,返回值类型,形参变量,方法体不能判断重载

二、重写

定义:子类继承父类后,可以对父类中同名同参的方法进行覆盖
应用:重写后,当创建子类对象以后,通过子类对象调用父类同名同参的方法时,实际上调用的是子类重写父类的方法
注意:1. 子类重写的方法名和参数列表必须与父类被重写方法的方法名和参数列表相同
   2. 子类重写方法的权限修饰符不小于父类被重写方法的权限修饰符(子类不能重写父类中声明为private权限的方法)
   3. 返回值类型
     ①父类被重写方法的返回值为void,子类重写方法的返回值为void
     ②父类被重写方法的返回值为A类型,子类重写方法的返回值为A类型或A类型的子类
     ③父类被重写方法的返回值为基本数据类型,子类重写方法的返回值与父类被重写方法的返回值保持一致
   4. 子类重写方法抛出的异常类型不大于父类被重写方法抛出的异常类型

子类和父类中同名同参的方法,要么都声明为static(考虑重写),要么都声明为非static(不是重写),否则报错

posted @ 2021-07-27 13:34  oneMoe  阅读(51)  评论(0编辑  收藏  举报