方法重载(OverLoad)
java中允许同一个类中多个同名方法的存在, 但要求形参列表不一致!
方法重写(OverRide)
方法覆盖(重写)就是子类中有个方法和父类的某个方法的名称、返回类型、参数一致!
方法覆盖要满足:
1.子类方法的参数、方法名称要和父类的方法的参数、方法名称完全一致!
2.子类方法的返回类型要和父类的方法返回值一样或是父类方法返回类型的子类, 比如父类的方法返回Object, 子类的方法可以是String.
3.子类方法不能缩小父类方法的访问权限.
比较
| 名称 | 范围 | 方法名 | 形参 | 返回类型 | 修饰符 |
|---|---|---|---|---|---|
| 重载(OverLoad) | 当前类 | 必须一致 | 类型、个数或者顺序至少一个不一致 | 无要求 | 无要求 |
| 重写(OverRide) | 父子类 | 必须一致 | 相同 | 子类重写的方法, 返回的类型和父类返回的类型一致或是返回类型的子类 | 子类方法不能缩小父类访问权限 |