再美不及姑娘你
又见西风上碧树

1.多态的概述

同一个对象在不同时刻表现出不同的形态称为多态

前提:

必须有继承/实现关系

必须有方法重写

2.多态中成员访问的特点

例如: Animal a=new cat();使用动物类创建猫类对象

成员变量:编译时成员变量看左边也就是动物类中的成员变量,执行时也需要看左边也就是动物类,调用没有在动物类中的变量报错

成员方法:编译时成员方法看左边也就是动物类中的成员方法,执行时看右边也就是猫类;因为成员方法可以被重写,而成员变量没有重写

 

3.多态的优缺点

优点:

提高了程序的扩展性,定义方法时,使用父类类型作为参数,将来使用的时候,使用具体的子类类型参与操作

缺点:

不能使用子类的特有功能

4.多态的转型(使得父类可以使用子类特有的方法)

向上转型:从子类到父类,父类引用指向子类对象

向下转型:从父类到子类,父类引用转为子类对象

例如:

Animal a=new cat();//向上转型
      a.eat();
      //如何使用对象a进行访问cat类的独有方法play?使用向下转型
      cat c=(cat) a;//向下转型,父类引用转为子类对象
      c.play();

 

posted on 2022-03-16 19:10  再美不及姑娘你  阅读(59)  评论(0)    收藏  举报