重写(Override)与重载(Overload)

Posted tonghun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了重写(Override)与重载(Overload)相关的知识,希望对你有一定的参考价值。

一 概述

1.什么是重载?

利用形参区分同一个类中多个同名方法的机制叫做重载。

2.什么是重写?

子类继承父类,重写父类方法的过程叫做重写。

二 对比

1.发生范围

重写发生在父类与子类之间,涉及两个类,重载发生在同一个类内部。

2.约束

重写

  1. 子类在重写父类方法时返回值必须是父类方法返回值的子类。
  2. 不能降低父类的访问权限,即假如父类方法的访问权限是protected,子类在重写方法时不能修改为private。
  3. 抛出的异常必须是父类异常的子类。
  4. 静态方法不能被重写。
  5. final类型的方法不能被重写。

重载
重载正是根据方法的形参来区分同名的方法,所以同名方法间形参不能完全相同,参数类型与个数完全相同,顺序不同,属于不同形参。

以上是关于重写(Override)与重载(Overload)的主要内容,如果未能解决你的问题,请参考以下文章

重写(override)与重载(overload)的区别

面向对象重写(override)与重载(overload)区别

Java重载(Overload)与重写(Override)

Override(重写)与Overload(重载)的区别。

重写(Override)与重载(Overload)

重写(Override)与重载(Overload)