abstract class Animal{
public String name;
public Animal(String name){
this.name=name;
}
//因为每种动物都有吃的动作,但是吃的东西却不一样,所以我们把它写为抽象方法。
public abstract void Eat();
}
//子类狗
class Dog extends Animal{
public Dog(String name) {
super(name);
}
@Override
public void Eat() {
System.out.println("吃骨头");
}
}
//子类猫
class Cat extends Animal{
public Cat(String name) {
super(name);
}
@Override
public void Eat() {
System.out.println("吃鱼");
}
}
class Student{
public String name;
public Student(String name){
this.name=name;
}
//在这里我们只需要写一个喂动物的方法,然后把动物的对象传进去。
public void FeedAnimal(Animal a){
System.out.println("我是学生"+name+"我在喂"+a.name);
a.Eat();
}
}