方法的重写

方法的重写

概念:子类继承父类之后,就拥有了符合权限的父类的属性和方法,但是当父类的方法不符合子类的要求的时候,子类也可以重新的书写自己想要的方法。所以,方法的重写,即子类继承父类的方法后,由于父类的方法不满足子类的需求,子类重新书写该方法。

方法重写的条件

  1. 在子类中重写父类的方法。
  2. 返回值类型、方法名、参数列表必须和父类重写的方法一模一样。
  3. 访问修饰符不能被父类重写的方法更严格。
  4. 抛出的异常必须比父类的要小。

代码实现:

java 复制代码
//创建父类Person
class Person {
    public void eat(){
        System.out.println("吃食物");
    }
    public void sleep(){
        System.out.println("睡觉");
    }
}

//创建子类Student
class Student extends Person {
    public void study(){
        System.out.println("学习");
    }
@override
    public void eat(){
        System.out.println("我喜欢吃螺蛳粉。");
    }
}

public class Test {
    //这是一个main方法,是程序的入口:
    public static void main(String[] args) {
        //创建一个Student类的对象:
        Student student = new Student();
        student.eat();
    }
}

运行结果:

方法重写VS方法重载

名称 发生范围 方法名 形参列表 返回类型 修饰符
重载(Overload) 本类 必须一样 类型,个数或者顺序至少有一个不同 无需求 无需求
重写(Override) 父子类 必须一样 相同 子类重写的方法,返回的类型和父类返回的类型一致,或者是其子类 子类方法不能缩小父类方法的访问范围
相关推荐
卓怡学长6 小时前
w213基于Spring Boot框架的Web安全学习系统的设计与实现
java·spring boot·spring·web安全·intellij-idea
Zhou1411366 小时前
MyBatisPlus_02_条件构造器与高级功能
java·开发语言·python
垚垚学技术_聚焦云原生6 小时前
Ansible Role 生产环境标准目录结构与规范化实践
java·elasticsearch·ansible
霸道流氓气质6 小时前
Spring AI Alibaba Graph Studio 入门指南:可视化Agent编排与调试平台
java·人工智能·spring
SimonKing6 小时前
Stream-Nexus:我的轻量级推送中间件(sse、websocket)终于定下来了
java·后端·程序员
边境悍匪6 小时前
蜗牛学苑 Java 智能体学习 Day49|贯穿项目 5 订单下单业务 思维导图复盘
java·开发语言·spring boot·学习·阿里云
鬼手点金6 小时前
Claude Code示范案例-修复 Bug 工作流
java·服务器·前端·javascript·bug·openclaw
一条破秋裤6 小时前
Linux 进程通信介绍:内存隔离与 IPC 分类
java·linux·服务器
机核研创社6 小时前
polo 长袖短裤套装自动化产线:八台机器排队接力
android·java·自动化
Roadinforest6 小时前
Spring Boot 4 六步入门实录:从 Hello World 到一个能交付的 Todo API
java·开发语言·spring boot·spring