方法重载(Overload)
对于功能类似的方法来说,因为参数列表不一样,却需要记住那么多不同的方法名称,太麻烦。
方法的重载(Overload)多个方法的名称一样,但是参数列表不一样。
好处:只需要记住唯—个方法名称,就可以实现类似的多个功能。
方法重载与下列因素相关:
- 参数个数不同
- 参数类型不同
- 参数的多类型顺序不同
方法重载与下列因素无关:
- 与参数的名称无关
- 与方法的返回值类型无关
方法重写(Override)
概念:在继承关系当中,方法的名称一样,参数列表也一样。
重写(Override):方法的名称一样,参数列表【也一样】。或叫做覆盖、覆写。
重载(OverLoad):方法的名称一样,参数列表【不一样】。
方法覆盖重写的注意事项:
-
必须保证父子类之间方法的名称相同,参数列表也相同。
@Override
:写在方法前面,用来检测是不是有效的正确覆盖重写。
这个注解就算不写,只要满足要求,也是正确的方法覆盖重写。 -
子类方法的返回值必须【小于等于】父类方法的返回值范围
扩展:java.lang.Object类是所有类的公共最高父类(祖宗类),java.lang.String就是 Object的子类。 -
子类方法的权限须【大于等于】父类方法的权限修饰符。
扩展:public> protected>( default)> private
备注:( default)不是关键字 default,而是什么都不写,留空。