javase -- 方法重写


方法重写.

在子类中可以根据需要对从父类中继承的同名、同参数的方法进行改造 – 重写,也称为方法重置覆盖

  • 重写之后,当创建子类对象以后,通过子类对象调用子类中的同名同参数方法时,实际执行的是子类重写父类的方法

要求.

  • 子类重写的方法名和形参列表与父类别重写的方法名和形参列表相同
  • 重写的方法的访问修饰符 不小于 被重写方法
    • 子类不能重写父类中private或final修饰的方法
      • 其中private,可以写同名,通常,但是不会认为对父类方法的重写
      • final修饰是根本不能重写,会爆红
  • 返回值类型
    • 如果父类被重写方法是返回值类型是void, 那么子类也必须是void
    • 如果父类被重写方法是返回值类型是一个类, 那么子类也必须是这个类或其子类
    • 如果父类被重写方法是返回值类型是基本类型 那么子类也必须是相同的基本类型
  • 重写的方法抛出的异常类型 不大于 被重写方法
    • 若父类没有抛出异常,子类也不能抛出异常

子类和父类中的同名同参数要么都声明为非static的(考虑重写)

要么声明为static的(不是重写)


文章作者: liuminkai
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 liuminkai !
评论
 上一篇
javase -- super关键字 javase -- super关键字
super. 父类 使用super可以在构造器或方法中调用父类的属性(super.属性名)、构造器(super(形参列表))、方法(super.方法名) 通常情况下,我们习惯省略super 但,父类,与子类存在同名的方法或属性时,如果你
2020-07-29
下一篇 
javase -- this关键字 javase -- this关键字
this的使用. this表示 当前对象 或 当前正在创建的对象(构造器中的this) 可以用于修饰:属性(this.属性名)、方法(this.方法名(有参|无参))、构造器(this(有参|无参)) 如果一个类中有n个构造器,则最多
2020-07-28
  目录