Animal接口:
public interface Animal {
void cry();
String getAnimalName();
}
Dog类代码:
public class Dog implements Animal{
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public void cry() {
System.out.println(name+"正在汪汪叫");
}
@Override
public String getAnimalName() {
return name+"种类为狗";
}
}
Cat类代码:
public class Cat implements Animal{
public String name;
public Cat(String name) {
this.name=name;
}
@Override
public void cry() {
System.out.println(name+"正在喵喵叫");
}
@Override
public String getAnimalName() {
return name+"种类为猫";
}
}
Simulator类代码:
public class Simulator {
public void piaySound(Animal animal){
animal.cry();
System.out.println(animal.getAnimalName());
}
}
Application类代码:
public class Application {
public static void main(String[] args) {
Simulator simulator=new Simulator();
Dog dog=new Dog();
dog.setName("西西");
simulator.piaySound(dog);
Cat cat=new Cat("花花");
simulator.piaySound(cat);
}
}
运行结果图: