面向对象之多态

我就是我 2022-05-19 23:40 342阅读 0赞

面向对象之多态

一、多态的概述及前提

1,概述

多态即事物存在的多种形态

2,多态的前提

  1. \* 要有继承
  2. \* 要有方法重写
  3. \* 要有父类引用指向子类对象

二、多态的访问特点

1,多态中的成员访问特点之成员变量:编译看左边(父类),运行看左边(父类)

2,多态中的成员访问特点之成员方法:编译看左边(父类),运行看右边(子类)。

3,多态中的成员访问特点之静态成员方法:编译看左边(父类),运行看左边(父类)。

总结:只有非静态的成员方法,编译看左边,运行看右边

三、向上转型和向下转型

类似于:基本数据类型自动类型提升和强制类型转换

  1. int i = 10;
  2. byte b = 20;
  3. //i = b; //自动类型提升
  4. //b = (byte)i; //强制类型转换

父类 fu = new 子类(); // 向上转型

子类 zi =(子类) fu; //向下转型

四、多态的好处和弊端

好处:

  1. \* a:提高了代码的维护性(继承保证)
  2. \* b:提高了代码的扩展性(由多态保证)

弊端:

  1. \* 不能使用子类的特有属性和行为。

发表评论

表情:
评论列表 (有 0 条评论,342人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Python-面向对象

    当子类和父类都存在相同的run()方法时,我们说,子类的run()覆盖了父类的run(),在代码运行的时候,总是会调用子类的run()。这样,我们就获得了继承的另一个好

    相关 Java面向对象

    理解java的三大特性——多态对象是类的实例,而类是对象的抽象化 ![这里写图片描述][SouthEast] 面向对象编程有三大特性:封装、继承、多态。   封装