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

1.基本介绍

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

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

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

三同一大一小(口诀):

(1)方法名相同

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

(3)返回值类型相同

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

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

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

public > protected > 默认 > private

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

3. 方法重写 vs 方法重载

  • 重写(Override) :继承关系,子类改父类方法 → 同名同参
  • 重载(Overload) :同一个类里,多个同名方法 → 同名不同参
相关推荐
人活一口气12 小时前
Spring Boot与AIGC的完美结合:从零搭建智能内容生成平台
java·spring boot·aigc
像我这样帅的人丶你还15 小时前
Java 后端详解(三):全局异常处理与 JPA 数据库映射
java·后端
NE_STOP15 小时前
vibe Coding -- 小项目实战
java
未秃头的程序猿20 小时前
Java 26正式发布!这3个新特性,让代码量直接减半
java·后端·面试
用户2986985301421 小时前
Word 文档文本查找与替换的 Java 实现方案
java·后端
阿哉21 小时前
Nacos 服务发现源码:藏在背后的两套事件机制,90%的人只讲了一半
java
咖啡八杯21 小时前
GoF设计模式——命令模式
java·设计模式·架构
AI人工智能_电脑小能手21 小时前
【大白话说Java面试题 第125题】【并发篇】第25题:说说 Java 线程的中断机制
java·后端·面试
Java内核笔记21 小时前
Spring Security 源码解析(六)无状态 JWT 实践:Session 共享与自定义过滤器
java·后端
荣码21 小时前
LangGraph多Agent协作:3个Agent干活比1个强,但我踩了4个坑
java·python