Studen类的feed()方法,参数是Animal对象,可以指向狗、可以指向猫、也可以指向鸟,然后调用animal.move()与animal.eat()时就会根据传入的不同动物而呈现不同的形态。Java提供了一个关键字instanceof,用来判断一个对象是否是某个类(或接口)的实例或者子类实例。
package p03;
/**
-
功能:测试学生类
-
作者:阿打莫拉作
-
日期:2022年05月19日
*/
public class TestStudent {
public static void main(String[] args) {
//创建学生类
Student01 student=new Student01();
student.setName(“张三丰”);//创建第一个动物 Animal animal1=new Cat(); animal1.setName("药丸"); animal1.setAge(3); //创建第二个动物 Animal animal2=new Dog(); animal2.setName("晚晚"); animal2.setAge(4); //创建第三个动物 Animal animal3=new Bird(); animal3.setName("悦悦"); animal3.setAge(2); //调用学生对象的喂养方法,传入不同的动物对象 student.feed(animal1); student.feed(animal2); student.feed(animal3);
}
}
运行结果,就是运行不出来。痛苦