目录
1 实验名称
动物声音模拟器
2 实验目的
理解并掌握向上转型实现多态
继续掌握引用类型的参数传值的过程及内存中的变化情况
熟练代码调试
实现模拟器模拟播放狗,猫,老虎的叫声
3 实验源代码
Application.java
Animal.java
Simulator.java
Dog.java
Bird.java
4 实验运行结果图
5 总结
在这次实验中,通过以下步骤完成了任务:
(1)定义Animal类:首先需要定义一个Animal类作为基类,该类包含两个成员变量和一个方法,分别代表动物的名字、年龄和发声行为。
(2)定义子类:在Animal类的基础上,需要定义不同种类的动物对应的子类,并重写发声行为的方法,以实现不同种类动物的声音效果。在本次实验中,定义了Dog、Cat、Duck三个子类,并重写了它们的发声行为。
(3)实现多态:Java中的多态是指同一类型的对象,在执行时可能会有不同的行为方式,即父类可以引用子类对象。在本次实验中,将不同种类的动物都定义为Animal类型的对象,并根据用户输入的不同种类动物,调用相应的发声行为方法。
在这实验中,重点在于Application.java中使animal成为bird的上转型对象,匿名子类的对象作为playAnimalSound方法的参数,以此来实现模拟器模拟播放狗,猫,小鸟的叫声。