31面向对象(中级)-方法重写/覆盖(override)

1.基本介绍

简单的说:方法覆盖(重写)就是子类有一个方法,和父类的某个方法的名称、返回类型、参数一样,那么我们就说子类的这个方法覆盖了父类的那个方法。

子类(下级)把父类(上级)已有的方法,重新写一遍实现,让它更适合子类自己。

2.方法重写必须满足什么条件?

三同一大一小(口诀):

(1)方法名相同

(2)参数列表相同(个数、类型、顺序都一样)

(3)返回值类型相同

特殊:或者子类的返回类型是父类的返回类型的子类。

(4)子类方法的权限 >= 父类权限

父 public → 子只能 public 父 protected → 子可以 protected /public

public > protected > 默认 > private

(5)子类抛出的异常不能比父类更大(了解即可)

3. 方法重写 vs 方法重载

  • 重写(Override) :继承关系,子类改父类方法 → 同名同参
  • 重载(Overload) :同一个类里,多个同名方法 → 同名不同参
相关推荐
小七在进步5 小时前
初识C++中的模板
java·开发语言·c++
Wang's Blog5 小时前
Java 项目实战: 交友项目 - SpringCloud 整合 Dubbo 的需求分析与模块规划
java·spring cloud·交友
哦虎!5 小时前
【JavaEE】文件操作IO
java
十年Java程序媛5 小时前
Redis 分布式锁 + GZIP 压缩缓存踩坑|高并发缓存真实线上复盘
java·开发语言·spring boot·redis·分布式·缓存·面试
顽疲6 小时前
Java vue 养老系统源码详解:入住核算单 live-check 缴费入账与预交金收据实践
java·vue.js·python·java 养老·springboot 养老·vue养老
共饮一杯无6 小时前
LiveKit本地录制落盘路径排查与修复实践
java·go·livekit
StevenLdh6 小时前
第八期 · 情绪闯关挑战盒:一个「无惩罚」成就系统的数据建模
java·微信小程序
Wang's Blog6 小时前
Java 项目实战: 交友项目 - 入门案例:编写 Dubbo 服务消费者
java·dubbo·交友
IT研究室6 小时前
最新计算机毕业设计选题推荐-基于spring boot的教育学习平台-网站-文档指导-Java-springboot
java·spring boot·课程设计
亚林瓜子6 小时前
Spring Boot 集成 ip2region 离线 IP 库实战指南
java·spring boot·后端·ip·ip2region