设计一个动物声音“模拟器”,希望模拟器可以模拟各种动物的叫声,要求如下:必须使用接口或者抽象类;至少模拟两种以上的动物种类;类名方法名定义友好;
public interface Animal {
void cry();
String getAnimalName();
}
public class Simulator {
Animal animal;
void playSound(Animal animal){
this.animal=animal;
System.out.println("动物的种类是"+animal.getAnimalName()+"现在播放它的声音");
animal.cry();
}
}
public class Dog implements Animal{
public void cry(){
System.out.println("汪汪 ");
}
public String getAnimalName(){
return "狗";
}
}
public class Cat implements Animal{
public void cry(){
System.out.println("喵喵 ");
}
public String getAnimalName(){
return "猫";
}
}
public class Application {
public static void main(String[] args) {
Simulator simulator=new Simulator();
simulator.playSound(new Dog());
simulator.playSound(new Cat());
}
}
运行结果如下:
动物的种类是狗现在播放它的声音
汪汪
动物的种类是猫现在播放它的声音
喵喵