方法重写(Override)和方法重载(Overload)具有以下相同点:
l1.都要求方法同名。
l2.都可以用于抽象方法和非抽象方法之间。
方法重写和方法重载具有以下不同点:
lA.方法重写要求参数签名必须一致,而方法重载要求参数签名必须不一致。
lB.方法重写要求返回类型必须一致,而方法重载对此不做限制。
lC.方法重写只能用于子类从父类继承的实例方法,方法重载用于同一个类的所有方法(包括从父类中继承而来的方法)。
lD.方法重写对方法的访问权限和抛出的异常有特殊的要求,而方法重载在这方面没任何限制。
lE.父类的一个方法只能被子类重写一次,而一个方法在所在的类中可以被重载多次。
lF.构造方法能被重载,但不能被重写 |