首页 > 其他分享 >面向对象——多态

面向对象——多态

时间:2022-08-19 20:45:46浏览次数:47  
标签:重写 多态 面向对象 Student 子类 父类 方法

多态

  • 即同一方法可以根据发送对象的不同而采用不同的行为方式
  • 多态是指不同的子类在继承父类后分别都重写覆盖了父类的方法,即父类同一个方法,在继承的子类中表现出不同的形式。
  • 一个对象的实际类型是确定的,但可以指向对象的引用类型可以有很多
  • 多态存在条件
    • 有继承关系
    • 子类重写父类的方法
    • 父类引用指向子类对象

image

image
编译看左边,运行看右边

//父类的引用指向子类
        //子类能调用的方法都是自己的或者继承自父类的
        Student s1 = new Student();
        //父类可以指向子类,但不能调用子类独有的的方法(可以调用子类重写的)
        Person s2 = new Student();
        Object s3 = new Student();

注意点

  1. 多态是方法的多态,没有属性的多态
  2. 父类和子类,有联系 类型转换异常:ClassCastException
  3. 存在条件:继承关系,方法需要重写,父类引用指向了子类对象

不能被重写的方法:

1.static方法,属于类,而不属于实例。

2.final 常量

3.private 私有方法

标签:重写,多态,面向对象,Student,子类,父类,方法
From: https://www.cnblogs.com/dayu2022/p/16603261.html

相关文章

  • 第7章 面向对象编程(基础部分)
    ​7.1 类与对象oop     问题:编写一个程序,输入猫名字,显示该猫的名字,年龄,颜色     现有技术:单独定义变量、数组;缺点:不利于数据管理,效率低   ......
  • Python-面向对象
    面向对象面向对象是一种编程思想,即按照真实世界的思维方式构建软件系统.定义类class类名[(父类)]:类体创建对象用类创建对象的过程称为实例化,是将类这个抽......
  • JavaSE:第四章:面向对象上
    史上最全的知识体系脑图,覆盖所有知识点,所有细节,注意事项。面向对象上:包含面向对象与面向过程,类和对象,属性,方法,封装和隐藏,构造器(构造方法),this的使用,值传递,package、impor......
  • 23、面向对象编程
    23、面向对象编程 目录:对象的概念类与对象面向对象编程类的定义与实例化属性访问类属性与对象属性属性查找顺序与绑定方法小结视频链接 ......
  • 26、多态性与鸭子类型
    26、多态性与鸭子类型  多态与多态性多态指的是一类事物有多种形态,比如动物有多种形态:猫、狗、猪classAnimal:#同一类事物:动物deftalk(self)......
  • 面向对象思想的概述和面向对象思想的举例
    面向对象思想的概述 面向过程:当需要实现一个功能的时候,每一个具体的步骤都要亲力亲为,详细处理每一个细节面向对象:当需要实现一个功能的时候,不关心具体的步骤,而是找一个......
  • 面向对象——封装
    封装该露的露,该藏的藏我们程序设计要追求”高内聚,低耦合“。高内聚就是类的内部数据细节由自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。封装(数据的隐......
  • 面向对象回顾及原型讲解
    面向对象回顾      核心概念:万物皆对象(顶层对象Object)抽取行为作为方法抽取名词作为属性    俩种构建对象的方式      构造函数构建......
  • 面向对象——类与对象的关系
    类和对象的关系类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物对象是抽象概念的具体实例创建和初始化对象使用new关键字创建......
  • 面向对象——初识面向对象、回顾方法定义调用
    初识面向对象属性+方法=类对于描述复杂的事物,为了从宏观上把握、从整体上合理分析,我们需要使用面向对象来分析整个系统。但是,具体到微观操作,让然需要面向过程的思路去处......