抽象类

来源:互联网 发布:js 数组 push pop 编辑:程序博客网 时间:2024/05/22 17:11
public abstract class Animal {
public abstract void cry();
public abstract String getAnimalName();

}

public class Simulator {
public void playSound(Animal animal){
System.out.println("现在模拟器模拟"+animal.getAnimalName()+"的叫声:");
animal.cry();
}
}

public class Dog extends Animal{
public void cry() {
System.out.println("汪汪...");
}
public String getAnimalName() {
return "狗狗";
}
}

public class Cat extends 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());
}
}

总结:对于测试类中的 simulator.playSound(new Dog());这一句,我不明白其含义,动物类为Dog类的父类,为上转型对象的话,怎么没有相应语句...


原创粉丝点击