【 Java_基础】java中方法的重载和覆盖分别要满足的条件
1.重载:遵循“两同三不同”
两同:同一个类中的同名方法
三不同:形参的类型,个数,顺序不同
特别提醒:
- 返回值不同构不能方法重载
- 形参名称不同构不成方法重载
2.覆盖(重写)的要求
- 子类方法的名称,返回类型必须与父类一致。
- 子类方法不能缩小父类方法的访问权限
- 子类方法不能抛出比父类方法更多的异常
- 方法覆盖只存在于子类和父类,同一个类中方法只能被重载
- 父类的静态方法不能被子类覆盖
- 子类可以定义与父类的静态方法同名的静态方法
- 父类的非静态方法不能被子类覆盖为静态方法
- 父类的私有方法不能被子类覆盖
- 父类的抽象方法可以被子类通过两种途径覆盖:①实现抽象方法 ②再次定义为抽象方法由孙类实现或继续抽象
- 父类的非抽象方法可以被覆盖为抽象方法