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

1.基本介绍

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

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

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

三同一大一小(口诀):

(1)方法名相同

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

(3)返回值类型相同

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

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

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

public > protected > 默认 > private

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

3. 方法重写 vs 方法重载

  • 重写(Override) :继承关系,子类改父类方法 → 同名同参
  • 重载(Overload) :同一个类里,多个同名方法 → 同名不同参
相关推荐
idolao2 小时前
Oligo 7.60 安装教程:引物设计+Java 环境配置
java·开发语言
做个文艺程序员5 小时前
第04篇:K8s 弹性伸缩实战:HPA、VPA、KEDA——Java SaaS 应对流量洪峰的秘密武器
java·容器·kubernetes·弹性伸缩·自动扩容·ai 推理伸缩
石山代码8 小时前
ArrayList / HashMap / ConcurrentHashMap
java·开发语言
AskHarries10 小时前
系统提示词、开发者指令和用户输入的优先级
java·前端·数据库
daidaidaiyu10 小时前
ThingsBoard 规则链系统源码分析和自定义定时器
java
小毛驴85011 小时前
spring-boot-maven-plugin,maven-compiler-plugin 功能对比
java·python·maven
csdn_aspnet11 小时前
Java 霍尔分区算法(Hoare‘s Partition Algorithm)
java·开发语言·算法
霸道流氓气质11 小时前
通义灵码 IDEA 插件完全使用指南
java·ide·intellij-idea
诸葛务农11 小时前
道路行驶条件下电动汽车永磁电机的有效使用寿命及永磁体的失效和回收再利用(下)
java·开发语言·算法
Percep_gan11 小时前
Java8中的stream的测试使用
java