首页 > 其他分享 >19-面向对象-方法重写(Override)

19-面向对象-方法重写(Override)

时间:2023-08-18 17:03:22浏览次数:44  
标签:类型 19 重写 面向对象 子类 Override 父类 方法

基本介绍

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

即在Java中,子类在重写父类的方法时,必须与父类方法的修饰符、返回值类型、方法名(参数列表) 要完全一致

public class Override01 {
    public static void main(String[] args) {
        Dog dog = new Dog();
        dog.cry();
    }
}

class Animal{
    public void cry(){
        System.out.println("Animal一直在哭。。。");
    }
}

class Dog extends Animal{
    //方法重写
    //1.子类方法的参数,方法名称,要和父类方法的参数,方法名称完全一样
    //2.子类方法的返回类型和父类方法的返回类型一样,或者是父类返回类型的子类
    //3.子类方法不能缩小父类方法的访问权限
    public void cry(){
        System.out.println("Dog一直在哭。。。");
    }
}

重写(Override)和 重载(Overload)的区别

1. 重写(Override)

重写是子类重写父类的方法,方法的名称、返回类型、参数列表(参数的类型和个数)完全一样。

重写是动态绑定,即在编译时不能确定具体的调用方法,而在程序运行时,才能确定具体的被调用的方法。

2. 重载(Overload)

重载是在当前类中,方法的名称一样,但返回类型,参数列表(参数的类型和个数)不同。

重载是静态绑定,即在编译时就根据实参类型确定了调用哪个方法。

 

标签:类型,19,重写,面向对象,子类,Override,父类,方法
From: https://www.cnblogs.com/REN-Murphy/p/17640999.html

相关文章

  • 【8月19日】红帽openstack管理课程(CL210) 新一轮开课
    课程介绍通过实验室操作练习,学员将能够深入学习红帽企业LinuxOpenStack®平台各服务的手动安装方法,还将了解OpenStack开发社区的未来发展计划。培训地点:线下面授:苏州市姑苏区干将东路666号和基广场401室;远程直播:腾讯会议平台开课时间:2023年8月19日开始—9月16日结束课程对象负......
  • 2023下半年NPDP产品经理国际认证8月19日开班
    产品经理国际资格认证NPDP是新产品开发方面的认证,集理论、方法与实践为一体的全方位的知识体系,为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。  【认证机构】 产品开发与管理协会(PDMA)成立于1979年,是全球范围内产品开发与管理专业人士最杰出的倡导者,协助个人、企业......
  • 第十节 面向对象综合训练(拓展)
    练习一:​ 自行完成切换美女图片的功能。需求如下:需求详解:1,在功能选项中添加更换图片,在更换图片里面再添加美女,动物,运动。​代码中功能是JMenu,更换图片也是JMenu,美女,动物,运动是三个JMenuItem​代码如下://创建菜单并添加到界面当中//1.创建菜单JMenuBar的对象J......
  • 18-面向对象-super关键字
    super关键字super代表父类的引用,用于访问父类的属性、方法、构造器基本语法1)访问父类的属性,但不能访问父类的private属性super.属性名2)访问父类的方法,但不能访问父类的private方法super方法名3)访问父类的构造器,注意只能放在构造器的第一句super(参数列表)publicc......
  • 191. 位1的个数
    编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为'1'的个数(也被称为汉明重量)。示例1:00000000000000000000000000001011中,共有三位为'1'。示例2:输入:n=00000000000000000000000010000000输出:1解释:输入的二进制串000000000000000000000000......
  • 面向对象的三大特性
    面向对象的三大特性(2007-05-2123:58:41)转载▼   1.封装:面向对象编程核心思想这一就是就是将数据和对数据的操作 封装在一起. 通过抽象,即从具体的实例中抽取共同的性质形成一般的概念,比如类的概念.   2.继承:继承体现了一种先进的编程模式.子......
  • .net core发布到IIS上出现 HTTP 错误 500.19
    ​1.检查.netcore环境运行环境是否安装完成,类似如下环境​编辑 2.IIS是否安装全本次原因就是IIS未安装全导致的按照网上说的手动重启iis(iisreset)也不行 ​......
  • 【题解】#373. 「USACO1.1」Friday the Thirteenth 题解(2023-07-19更新)
    #373.「USACO1.1」FridaytheThirteenth题解本文章的访问次数为次。Part1提示题目传送门欢迎大家指出错误并私信这个蒟蒻欢迎大家在下方评论区写出自己的疑问(记得@这个蒟蒻)Part2背景这个蒟蒻又一次写了一篇大水题的题解(话说为什么是又),当然也是为了纪念他的\(......
  • 【题解】#68. 「NOIP2004」津津的储蓄计划 题解(2023-07-19更新)
    #68.「NOIP2004」津津的储蓄计划题解本文章的访问次数为次。Part1提示题目传送门欢迎大家指出错误并私信这个蒟蒻欢迎大家在下方评论区写出自己的疑问(记得@这个蒟蒻)Part2背景这是这个蒟蒻的第一篇题解,也是这个蒟蒻对自己的\(50\)AC的纪念。Part3更新日志......
  • 【八月】CF *1700 ~*1900
    466C想双指针假的。考虑直接分类讨论能不能取:一个点能取,当且仅当他在总和的\(\frac{1}{3}\)处或\(\frac{2}{3}\)处。那就很好讨论了:遍历一遍数组,能做左断点就做,找到另一个时累加已经找到的左断点数。20C板子。474D直接dp。然后用前缀和回答询问。先对好的串求出数量......