多态的实现

时间:2019-10-22 18:24:38   收藏:0   阅读:74
package Test1;
/**
 * 
 * @author 刘子煜
 *2019.10.22
 *       多态的实现:
 *             多态是指方法的多态,不是属性的多态
 *             多态存在的三个必要条件:继承的出现、方法的重写、父类引用指向子类对象
 *             父类引用指向子类对象后,用该父类引用调用子类重写的方法,多态就实现了
 */
public class Test12 {
public static void main(String[] args) {
    Animal a=new Animal();
    Cry(a);
    Dog d=new Dog();
    //此处为父类引用指向子类对象
    Cry(d);
    Cat c=new Cat();
    //此处为父类引用指向子类对象
    Cry(c);
}

static void Cry(Animal a1) {
    a1.shout();
}
}
//shout()方法的重写,Dog和Cat继承Animal类
class Animal{
    public void shout() {
        System.out.println("叫了一声!!!");
    }
}
class Dog extends Animal{
    public void shout() {
        System.out.println("汪汪汪!!");
    }
}
class Cat extends Animal{
    public void shout() {
        System.out.println("喵喵喵!!");
    }
}
//多态的好处是:当要调用同一种方法,但方法的行为不同时,不必写多个子类引用来调用该方法。大大简便了程序代码。。。

 

原文:https://www.cnblogs.com/a155-/p/11721526.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!