方法的重写 + 重载

本文详细介绍了Java中的方法重写,包括其特征、注意事项及与方法重载的区别。方法重写要求子类方法与父类有相同的声明,但实现不同,且子类访问权限需大于等于父类。注意,私有方法和静态方法不能被重写。此外,重写仅存在于继承关系中,而重载则在同一类内进行,两者条件和作用范围各有不同。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.方法重写的特征:方法声明与父类一致,各个子类方法体不一致,执行出的效果各不一样

子类对象调用方法的时候,使用的是自己类中重新定义的同名方法,无法再调用父类中的方法,所以也叫作方法的覆盖

2.方法重写的注意事项: a.重写的范围 ;b.子类中方法的访问权限修饰符必须大于等于父类的访问权限修饰符

a.重写的范围:父类中的私有方法,子类无法重写。父类中使用static修饰的方法,子类无法重写,但是子类中允许存在同名方法

b.访问权限修饰符(限制被修饰的属性/方法哪些类可以使用):

private  私有的   只有自己类中可以
default  默认的   只有自己和直系亲属(同一个包)可以,该修饰符可省略不写
protected  保护的  自己和直系亲属 + 后代(同一个包的子类) 可以
public   公开的   谁都可以

3.override与overload的区别:

a.作用范围:方法重写作用在父类与子类之间;方法重载只作用在当前类中

b.关系:重写需要两个类间有继承关系 ;重载不要求任何关系

c.成立条件:重写要求子类方法的返回值类型、方法名、参数列表与父类一致   + 子类中方法的访问权限修饰符必须大于等于父类的访问权限修饰符;重载要求两个方法的方法名一致,参数列表不一致

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值