0
点赞
收藏
分享

微信扫一扫

Java - 方法重载 & 方法重写



Java - 方法重载 & 方法重写_重写

Ps1:在子类中,与父类中的字段具有相同名称的字段为隐藏字段,即使它们的类型不同。

Ps2:从上述定义中,我们可以知道成员字段不能像方法一样被重写。当子类定义具有相同名称的字段时,该子类仅声明一个新字段。超类中的字段是隐藏的。它没有被重写,所以它不能被多态访问。

Ps3:在子类中,父类中的字段不能通过其简单名称引用。相反,该字段必须通过父类访问。一般来说,我们不建议隐藏字段,因为它使代码难于阅读。

Ps4:重写:访问修饰符的限定范围大于等于父类方法(速记:父母永远希望孩子要青出于蓝而胜于蓝)。

Ps5:重写:返回值问题,Java 5或者以前,必须一样,Java 7 & Java 8可以不同,但是必须是父类返回值的派生类(返回值不同的特殊情况:可以返回父类本身以及子类类型)。


案例分析

Java - 方法重载 & 方法重写_重写_02

Ps:这里父类叫“Animal”,子类叫“Cat”,父类已经写好了一个一样的“say”方法,在这里通过注解@Override检测,会发现编译报错,提示父类没有这样的方法,应验了静态方法不能被重写,只起到隐藏父类的静态方法作用!


举报

相关推荐

0 条评论