Simulator类
public class Simulator {
public void playSound(Animal animal){
System.out.println("现在播放的是"+animal.getAnimalName()+"类的声音:");
animal.cry();
}
}
Animal类
public abstract class Animal {
public abstract void cry();
public abstract String getAnimalName();
}
Dog类
public class Dog extends Animal {
public void cry() {
System.out.println("汪汪");
}
public String getAnimalName() {
return "狗";
}
}
Cat类
public class Cat extends Animal {
public void cry() {
System.out.println("喵喵");
}
public String getAnimalName() {
return "猫";
}
}
Application类
public class Application {
public static void main(String[] args) {
Simulator simulator=new Simulator();
simulator.playSound(new Dog());
simulator.playSound(new Cat());
}
}