Java复习攻略03
Posted 猫狗记
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java复习攻略03相关的知识,希望对你有一定的参考价值。
设计一个动物声音“模拟器”,希望模拟器可以模拟许多动物的叫声,要求如下。
- 编写抽象类Animal
Animal抽象类有两个抽象方法cry()和getAnimalName(),即要求各种具体的动物给出自己的叫声和种类名称。
- 编写模拟器类Simulator
该类有一个playSound(Animal animal)方法,该方法的参数是Animal类型,即参数animal可以调用Animal的子类重写的cry()方法播放具体动物的声音,调用子类重写的getAnimalName()方法显示动物种类的名称。
- 编写Animal的子类:Dog和Cat类
下图是Simulator、Animal、Dog、Cat的UML图
编写主类Application(用户程序)
在主类Application的main方法中至少包含如下代码:
Simulator simulator = new Simulator();
simulator.playSound(new Dog());
simulator.playSound(new Cat());
public class Test { // 文件名Test.java
public static void main(String args[]){
Simulator simulator=new Simulator();
simulator.playSound(new Dog());
simulator.playSound(new Cat());
}
}
abstract class Animal{ // 抽象类
public abstract void cry();
public abstract String getAnimalName();
}
class Simulator{ // 模拟器类
public void playSound(Animal animal){
System.out.print("现在播放"+animal.getAnimalName()+"类的声音:");
animal.cry();
}
}
class Dog extends Animal{ // 继承Animal的Dog类
public void cry(){ // 方法
System.out.println("汪汪");
}
public String getAnimalName(){ // 方法
return "狗";
}
}
class Cat extends Animal{ // 继承Animal的Cat类
public void cry(){ // 方法
System.out.println("喵喵");
}
public String getAnimalName(){ // 方法
return "猫";
}
}
现在播放狗类的声音:汪汪
现在播放猫类的声音:喵喵
以上是关于Java复习攻略03的主要内容,如果未能解决你的问题,请参考以下文章