应用编程题(共8分) 设计一个动物声音“模拟器”,希望模拟器可以模拟许多动物的叫声,要求如下: 1.编写抽象类Animal Animal抽象类有两个抽象方法cry()和getAnimalName(),即要求各种具体的动物给出自己的叫声和种类名称。 2.编写模拟器类Simulator 该类有一个playSound(Animal animal)方法,该方法的参数是Animal类型。即参数animal可以调用Animal的子类重写cry()方法播放具体动物的声音,调用子类重写的getAnimalName()方法显示动物种类的名称。 3.编写Animal类的子类:Dog和Cat类 Dog类和Cat类分别继承于Animal类,并重写Animal类中的抽象方法。 4.编写主类MainTest类 在主类MainTest类中的main方法中至少包含如下代码: Simulator simulator=new Simulator(); simulator.playSound(new Dog()); simulator.playSound(new Cat());
举一反三
- 编写抽象类Animal,其中Animal抽象类有2个抽象方法voidcry()和StringgetAnimalName(),分别表示要求动物给出自己的叫声和种类名称。然后,编写Animal类的子类:Dog,Cat类,要求实现抽象类中的抽象方法。main主方法如下:Animalanimal;animal=newDog();System.out.println(animal.getAnimalName());animal.cry();animal=newCat();System.out.println(animal.getAnimalName());animal.cry();
- 义一个动物Animal类,包括动物类型type成员变量,一个叫声sound()方法,定义一个Animal类的子类Dog类,重写sound()方法;再定义一个Animal类的子类Cat类,重写sound()方法;定义测试TestAnimal类,声明创建Animal类对象,再分别创建一个Dog类、Cat类的对象,然后通过访问Animal对象来访问Dog、Cat类对象的sound()方法。
- 已知动物类定义如下class Animal{ string name;void shout (){System.out.println("动物发出叫声");}}要求定义Dog类和Cat类,Dog类继承Animal类并重写Animal的shout方法,也拥有自己的shower()方法,输出“狗喜欢玩水”Cat类继承Animal类并重写Animal的shout方法,也拥有自己的shower()方法,输出“猫怕水”(备注:没有个人电脑的同学,可以用笔和纸质记事本编写代码,然后拍照上传)
- Animal 是抽象类 ,Dog类和Cat类继承了Animal 。Animal dog = new Dog();的写法是否正确?
- 编写程序题 1.定义一个Animal类(可以定义成抽象类)至少具有跑(run())功能, 2.定义Dog类继承自Animal类,重写run()方法,并添加protectHome()方法 3.定义Fish类继承自Animal类,重写run()方法,并添加swim()方法 4.在主类中定义一个doSomething(Animal animal)方法接收用户传入动物,根据用户传入的具体动物,使用instanceof 关键字,判断具体是何种动物再执行该动物特有的方法如是执行swim()还是protectHome()方法.注意需要用类转换,执行该动物的特有方法。