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

多态的使用

时间:2020-05-19 12:54:46      阅读:52      评论:0      收藏:0      [点我收藏+]

标签:bsp   多态   static   利用   cat   animal   ast   class   测试   

2020-05-19

编写程序,模拟主人喂养宠物的场景:

定义宠物类:Cat,提供一个eat()方法表示吃。

定义宠物类:Bird,提供一个eat()方法表示吃。

定义主人类:Master,提供两个feed()方法来喂养。
该方法需要一个宠物的参数:
例如:
feed(Cat c)
feed(Bird b)

然后思考,怎么利用多态机制改良程序。尽可能改良。然后总结多态的好处。

 动物类

public class Animal {
    public void eat() {

    }
}

 

鸟类
public class Bird  extends Animal{
    @Override
    public void eat(){
        System.out.println("鸟吃小米");
    }

}

 


猫类
public class Cat extends Animal  {
    @Override
    public void eat() {
        System.out.println("猫吃鱼");
    }

}

 


主人类
public class Master {
    public void feed(Animal a){
        a.eat();
    }
}

 


测试类
public class Text {
    public static void main(String[] args) {
        Master lisi = new Master();
        Animal c = new Cat();
        lisi.feed(c);

        Animal b = new Bird();
       lisi.feed(b);
       //一般直接传递new对象 不在用"="赋值
       lisi.feed(new Bird());
    }
}

 

多态的使用

标签:bsp   多态   static   利用   cat   animal   ast   class   测试   

原文地址:https://www.cnblogs.com/dupeilin/p/12915916.html

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