Java 方法覆盖和方法重载

方法重载(overloaded),要求方法的名称相同,参数列表不相同。

方法覆盖(override),要求①方法名相同,②参数列表相同,③返回值相同

如果是方法覆盖,要注意以下几种情况:

1、子类方法不能缩小父类的访问权限,例如父类是public,而子类是private,这样将引起编译错误。(这是由Java的多态机制决定的)

2、子类方法不能抛出更多异常

3、父类的非静态方法不能被子类覆盖为静态方法

4.父类的私有方法不能被子类的覆盖,例如父类是private void func(),子类是public vod func(),这样只是共存。

你可能感兴趣的:(java)