Java课程学习六:编程题

设计一个动物声音”模拟器“,希望模拟器可以模拟许多动物的叫声,要求如下:(使用接口完成)

一:编写抽象类Animal

Animal抽象类有2个抽象方法cry()和getAnimaName(),即要求各种具体的动物给出自己的叫声和种类名称。

public interface Animal{
   public abstract void cry();
   public abstract String getAnimalName();
}

二:编写模拟器类Simulator

该类有一个playSound(Animal animal)方法,该方法的参数是Animal类型。即参数animal可以调用Animal的子类重写的cry()方法播放具体动物的声音,调用子类重写的getAnimalName()方法显示动物种类的名称。

public class Simulator{
    public void playSound(Animal animal){
    System.out.print("现在播放"+ animal.getAnimalName() +"类的声音:"); 
    animal.cry();
    }
}

三:编写Animal类的子类:Dog和Cat类

Dog的代码

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

Cat的代码

public class Cat implements Animal{
    public void cry(){
        System.out.println("ίχίχʽ­ίχίχ"); 
    }
        public String getAnimalName(){
            return "Γ¨"; 
        }

    }

四:编写主类Application

在主类Application的main方法中至少包含如下代码 。
Simulator simulator=new Simulator();
simulator.playSound(new Cat());
simulator.playSound(new Dog());

public class Application{
    public static void main(String[] args){
        Simulator simulator=new Simulator();
        simulator.playSound(new Cat());
        simulator.playSound(new Dog());
    }
}

输出结果

Java课程学习六:编程题_第1张图片

你可能感兴趣的:(java语言)