①定义一个动物接口Animal,包括一个eat()方法表示吃。
interface Animal{
void eat(Food food);
}
②定义一个猫类Cat,实现Animal接口,在eat()方法中输入猫吃什么。
class Cat implements Animal{
public void eat(Food food){
System.out.println("猫吃"+ food.getFood());
}
}
③定义一个狗类 Dog, 实现 Animal 接口,在eato方法中输出狗吃什么。
class Dog implements Animal{
public void eat(Food food){
System.out.println("狗吃"+ food.getFood());
}
}
定义一个食物抽象类 Food。包括 name(食物名称)、ge(Food0方法和 setFood0方衫
abstract class Food {
private String name;
public String getFood() {
return this.name;
}
public void setFood(String name) {
this.name = name;
}
}
⑤定义一个食物鱼类 Fish,继承Food 类,输出饲养员给猫喂什么。
class Fish extends Food {
public Fish() {
super();
super.setFood("鱼");
System.out.println("饲养员给猫喂鱼");
}
}
◎定义一个食物骨头类 Bone,继承 Food 类,输出饲养员给狗喂什么。
class Bone extends Food {
public Bone() {
super();
super.setFood("骨头");
System.out.println("饲养员给狗喂骨头");
}
}
◎定义一个饲养员类 Feeder, 在main0方法中实现给某种动公投喂某种食物。
class Feeder{
public static void main(String[] args){
Fish fish = new Fish();
Cat cat = new Cat();
cat.eat(fish);
Bone bone = new Bone();
Dog dog = new Dog();
dog.eat(bone);
}
}