提示1: 主人类:Master 宠物类:Pet 宠物类子类:Dog、Cat、YingWu 提示2: 主人应该有喂养的方法:feed() 宠物应该有吃的方法:eat() 只要主人喂宠物,宠物就吃。
要求:主人类中只提供一个喂养方法feed(),要求达到可以喂养各种类型的宠物。
编写测试程序: 创建主人对象 创建各种宠物对象 调用主人的喂养方法feed(),喂养不同的宠物,观察执行结果。
通过该案例,理解多态在开发中的作用。 重要提示:feed方法是否需要一个参数,参数选什么类型!!!
//主人类
class Master{
//多态思想
public void feed(Pet p){ //主人喂养宠物
p.eat(); //宠物吃
}
}
//宠物类,所有宠物的父类
class Pet{
//宠物有吃东西的方法
public void eat(){
}
}
//狗类
class Dog extends Pet{
public void eat(){
System.out.println("狗喜欢吃骨头");
}
}
//猫类
class Cat extends Pet{
public void eat(){
System.out.println("猫喜欢吃鱼");
}
}
//鹦鹉类
class YingWu extends Pet{
public void eat(){
System.out.println("鹦鹉喜欢吃虫子");
}
}
public class Text{
public static void main(String[] args){
Master m=new Master();//创建主人对象
m.feed(new Dog()); //主人喂养狗,狗就吃
m.feed(new Cat());
m.feed(new YingWu());
}
}