在子类继承父类时,经常会由于业务需求,而更改从父类继承的方法.
重载,即在子类中更改方法的参数列表,以便于更灵活的接收不同类型的传参.(也可以对方法体修改,但一定要修改参数列表)
其中有几个注意事项:
方法名必须和父类方法相同
参数列表必须不同(参数类型不同,参数个数不同,参数排列顺序不同均可认为是发生了重载,至少要有一种不同)
返回值类型不同不会发生重载
重写,即在子类中更改了方法体,而方法名,返回类型(当子类方法中的返回值类型是父类方法中返回值类型的子类时除外),参数列表均和原来的方法相同
有1个注意事项,就是子类重写方法的访问权限不可比父类方法访问权限更低,
如父类方法的访问权限是public,子类方法的访问权限就不能是private,default,protected.只能是public.
简而言之总结重载和重写的区别,重载参数列表不同,重写方法体不同.