5.8继承与多态

参考书籍:Java面向对象程序设计(第二版)--耿祥义 张跃平编著

 

当一个类有很多子类,而且这些子类都重写了父类的某个方法时,那么把子类创建的对象的引用放到一个父类的对象中,就得到了一个对象的上转型对象。这个上转型对象在调用这个方法时可能具有多种形态,因为不同的子类在重写父类的方法时可能产生不同的行为

例子

 

动物类

package lianxi2;

public class 动物 {
    void cry(){
    }
}

 

狗类

package lianxi2;

class extends 动物{
    void cry() {
        System.out.println("汪汪");
    }
}

 

猫类

package lianxi2;

class extends 动物{

    void cry() {
        System.out.println("喵喵");
    }
}

 

主类

package lianxi2;

public class Lianxi2 {
    public static void main(String args[]){
        动物 a=new 狗();    //a是狗的上转型对象
        a.cry();
        a=new 猫();       //a是猫的上转型对象
        a.cry();
    }
}
//这样好在不用一个个创建对象

 

注:多态性是指父类的某个方法被其子类重写时,可以各自产生自己的功能行为。

猜你喜欢

转载自blog.csdn.net/weixin_42717928/article/details/81127292
5.8
今日推荐