我写了一下,不知道你需要的是不是这个
public class Bone extends Food{
}
public class Cat extends Pet{
@Override
void eat(Food food) {
// TODO Auto-generated method stub
// super.eat(food);
if(food instanceof Bone){
System.out.println("猫不喜欢骨头");
}else if (food instanceof Fish) {
System.out.println("猫正在吃鱼");
}
}
}
public class Dog extends Pet{
@Override
void eat(Food food) {
// TODO Auto-generated method stub
// super.eat(food);
if(food instanceof Fish){
System.out.println("狗不喜欢鱼");
}else if (food instanceof Bone) {
System.out.println("狗正在吃骨头");
}
}
}
public class Fish extends Food{
}
public class Food {
}
public class Master {
public static void main(String[] args) {
Pet dog = new Dog();
Pet cat = new Cat();
Food bone = new Bone();
Food fish = new Fish();
dog.eat(bone);
dog.eat(fish);
cat.eat(bone);
cat.eat(fish);
}
}
public class Pet {
void eat(Food food) {
}
}
cat,dog类实现pet类,bone,fish类实现food类,master类里面有两个属性,分别为cat,dog