1.多态的概述
同一个对象在不同时刻表现出不同的形态称为多态
前提:
必须有继承/实现关系
必须有方法重写
2.多态中成员访问的特点
例如: Animal a=new cat();使用动物类创建猫类对象
成员变量:编译时成员变量看左边也就是动物类中的成员变量,执行时也需要看左边也就是动物类,调用没有在动物类中的变量报错
成员方法:编译时成员方法看左边也就是动物类中的成员方法,执行时看右边也就是猫类;因为成员方法可以被重写,而成员变量没有重写
3.多态的优缺点
优点:
提高了程序的扩展性,定义方法时,使用父类类型作为参数,将来使用的时候,使用具体的子类类型参与操作
缺点:
不能使用子类的特有功能
4.多态的转型(使得父类可以使用子类特有的方法)
向上转型:从子类到父类,父类引用指向子类对象
例如:
Animal a=new cat();//向上转型
        a.eat();
        //如何使用对象a进行访问cat类的独有方法play?使用向下转型
        cat c=(cat) a;//向下转型,父类引用转为子类对象
        c.play();
 
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号