1.方法的重载
方法的重载就是让类以统一的方式来处理不同类型数据的一种手段。有时候,对于同一种功能却却有多种实现形式,到底采用何种实现形式,取决于调用者给定的参数。给定的参数不同,调用的方法也不同,比如,对于同一种动物,却用不同的训练形式,到底采用何种训练形式,取决于调用者。
写道
public void train(Dog dog){
} //传入狗的参数,执行狗的命令。
public void train(Monkey monkey){
}//传入猴子的参数,执行猴子的命令
需要注意的是:方法的名称,参数的顺序及其类型构成了方法的签名,在类中每个方法的签名都必须唯一,编译器就是根
据方法的签名来判断在何时具体调用哪个方法,而返回类型对与方法的签名却没有任何影响。
2.方法的重写
方法的重写在子类继承父类的时候才会出现。在子类继承父类的时候,我们可以直接的使用父类中的所有方法,但是有些时候父类中的方法不能完全适应我们的需要,我们可以对父类的方法进行适当的改变,这就叫方法的重写,也被称之为方法的覆盖。
需要我们注意到是,方法的重写与覆盖有一些不同点:
a.方法的重写要求方法签名必须相同,而方法的重载要求方法签名必须不同。
b.方法的重写放回类型必须一致,而方法的重载则没有要求。
c.方法的重写只局限与子类和父类之间,而方法的重载可以在一个类的所有方法之间进行。