Java复习攻略03

Posted 猫狗记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java复习攻略03相关的知识,希望对你有一定的参考价值。

设计一个动物声音“模拟器”,希望模拟器可以模拟许多动物的叫声,要求如下。

  • 编写抽象类Animal

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

  • 编写模拟器类Simulator

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

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

下图是Simulator、Animal、Dog、Cat的UML图

qq_pic_merged_1615557568385

编写主类Application(用户程序)
在主类Application的main方法中至少包含如下代码:

Simulator simulator = new Simulator();
simulator.playSound(new Dog());
simulator.playSound(new Cat());
public class Test { // 文件名Test.java
    public static void main(String args[]){
        Simulator simulator=new Simulator();
        simulator.playSound(new Dog());
        simulator.playSound(new Cat());
    }
}
abstract class Animal{ // 抽象类
    public abstract void cry();
    public abstract String getAnimalName();
}
class Simulator{ // 模拟器类
    public void playSound(Animal animal){
        System.out.print("现在播放"+animal.getAnimalName()+"类的声音:");
        animal.cry();
    }
}
class Dog extends Animal{ // 继承Animal的Dog类
    public void cry(){ // 方法
        System.out.println("汪汪");
    }
    public String getAnimalName(){ // 方法
        return "狗";
    }
}
class Cat extends Animal{  // 继承Animal的Cat类
    public void cry(){ // 方法
        System.out.println("喵喵");
    }
    public String getAnimalName(){ // 方法
        return "猫";
    }
}

现在播放狗类的声音:汪汪
现在播放猫类的声音:喵喵

以上是关于Java复习攻略03的主要内容,如果未能解决你的问题,请参考以下文章

Java复习攻略04

Java复习攻略02

VSCode插件开发全攻略代码片段设置自定义欢迎页

计算机网络期末复习攻略

计算机网络期末复习攻略

计算机网络期末复习攻略