方法覆盖/重写

方法覆盖/重写
单词:Override、Overwrite

定义:
在子类继承父类关系中,子类重写父类方法

什么时候考虑使用方法覆盖?
父类中方法,无法满足子类中业务需求,子类有必要对继承过来的方法进行覆盖

满足重写的条件:
条件1:2个类必须要有继承关系
条件2:重写后和之前的方法具有:相同的返回值类型、相同的方法名、相同的形式参数列表
条件3:访问权限不能更低,可以更高
条件4:重写之后的方法不能比之前的方法抛出更多的异常,可以更少。

关于Object类中toString()方法的覆盖?
toString()方法存在作用:将java对象转换成”字符串“形式,大多数的java类toString()方法都是需要覆盖的。
因为Object类中提供的toString()方法输出的是一个java对象的内存地址。

至于toString()方法具体怎么定义怎么进行覆盖?
格式可以自定义,或者听需求

方法重载和方法覆盖区别?
方法重载发生在一个类中;方法覆盖是发生在具有继承关系中的父子类之间
方法重载是一个类中,方法名相同,参数列表不同。
方法覆盖是具有继承关系的父子类,并且重写的方法后和之前的方法一致:方法名一致、参数列表一致、返回值一致

注意事项:
1.方法覆盖只是针对方法和属性无关
2.私有方法无法覆盖
3.构造方法不能被继承,所以构造方法也不无法覆盖
4.方法覆盖只是针对"实例方法","静态方法覆盖"没有意义

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值