码迷,mamicode.com
首页 > 其他好文 > 详细

instance与可变参数合用,多态性

时间:2014-12-07 06:32:28      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:ar   sp   for   bs   as   new   nbsp   ht   class   

public class Doubt {

    public static void main(String[] args) {

        Dog d1=new Dog();

        Dog d2=new Zangao();

        Dog d3=new Hasiq();

        Master m=new Master();

        m.feed(d1,d2,d3);

 

 

 

    }

}

class Master {

    void feed(Dog ... d1) {

        for(Dog d:d1) {

            d.eat();

            if(d instanceof Zangao) {

                Zangao z=(Zangao)d;

                z.fight();

                System.out.println("是藏獒");

            }

            if(d instanceof Hasiq) {

                Hasiq h=(Hasiq)d;

                h.play();

                System.out.println("是哈士奇");

            }

        }

    }

}

class Dog {

    void eat() {

        System.out.println("狗吃东西");

 

    }

}

class Zangao extends Dog{

    void eat() {

        System.out.println("藏獒吃东西");

    }

    void fight() {

        System.out.println("我是藏獒,我爱战斗");

    }

}

class Hasiq extends Dog{

    void eat() {

        System.out.println("哈士奇吃东西");

    }

    void play() {

        System.out.println("我是哈士奇,我爱玩耍");

    }

}

instance与可变参数合用,多态性

标签:ar   sp   for   bs   as   new   nbsp   ht   class   

原文地址:http://www.cnblogs.com/u0mo5/p/4149089.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!