详述重写

本文详细解释了Java中方法重写的基本概念,包括为何需要重写、如何正确地进行重写,以及重写过程中的常见限制和注意事项。通过具体实例说明了重写规则,如方法签名的一致性、访问修饰符的约束、返回值类型的匹配等。

1、什么是重写

重写即重新改写,是为了将一个已有的事物进行某些改变以适应新的要求

2、为什么要重写

方法使用的是父类的eat方法,子类继承自父类的eat方法已经不能“准确描述子类自身的行为”,此时就需要用到重写

:如果父类中方法被final修饰,则该方法无法被重新改写,如

提醒:Java为了标注一个方法是重写后的方法,使用@Override

           如果必须调用父类中方法:(1)、子类非静态方法或代码块,使用super

                                                      (2)、如果是静态代码块或静态方法,必须创建父类对象

3、怎么重写

1、方法名相同,参数列表相同(个数和数据类型相同)

2、访问权限由大到小的顺序

public     protected   friendly(默认的,友好的)  private

重写后的方法的访问权限只能比父类的大或者相同,如

 

错误范例

 

 

3、返回值

(1)、如果父类方法返回值为void或基本数据类型(byte,short,int,long,float,doube,char,boolean),则子类重写后的方法返回值必须和父类相同

(2)、 如果父类方法返回值为引用类型,则子类重写后的方法返回值要么和父类相同,要么是父类返回值的子类,注意不能是基本数据类型

4、父类中static方法不能被重写

5、子类重写后的方法不能加static 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值