6、根据要求写代码: (1) 动物类Animal包含了抽象方法 abstract void shout(); (2) Cat类继承了Animal,并实现方法shout,打印“猫会喵喵叫” (3) Dog类继承了Animal,并实现方法shout,打印“狗会汪汪叫” (4) 在测试类中实例化对象Animal a1 =new Cat(),并调用a1的shout方法 (5) 在测试类中实例化对象Animal a2 =new Dog(),并调用a2的shout方法
时间: 2023-11-22 15:56:53 浏览: 229
Animal类的代码如下:
```java
public abstract class Animal {
public abstract void shout();
}
```
Cat类的代码如下:
```java
public class Cat extends Animal {
@Override
public void shout() {
System.out.println("猫会喵喵叫");
}
}
```
Dog类的代码如下:
```java
public class Dog extends Animal {
@Override
public void shout() {
System.out.println("狗会汪汪叫");
}
}
```
测试类的代码如下:
```java
public class Test {
public static void main(String[] args) {
Animal a1 = new Cat();
a1.shout(); // 猫会喵喵叫
Animal a2 = new Dog();
a2.shout(); // 狗会汪汪叫
}
}
```
输出结果为:
```
猫会喵喵叫
狗会汪汪叫
```
相关问题
设计一个动物发声模拟器,用于模拟不同动物的叫声。比如狮吼、虎啸、狗旺旺、猫喵喵……。定义抽象类Animal,包含两个抽象方法:获取动物类别getAnimalClass()、动物叫shout();然后基于抽象类Animal定义狗类Dog、猫类Cat和山羊Goat,用getAnimalClass()方法返回不同的动物类别(比如猫,狗,山羊),用shout()方法分别输出不同的叫声(比如喵喵、汪汪、咩咩)。最后编写AnimalShoutTest类测试
好的,以下是动物发声模拟器的代码:
Animal.java
```
public abstract class Animal {
public abstract String getAnimalClass();
public abstract String shout();
}
```
Dog.java
```
public class Dog extends Animal {
@Override
public String getAnimalClass() {
return "Dog";
}
@Override
public String shout() {
return "Woof Woof!";
}
}
```
Cat.java
```
public class Cat extends Animal {
@Override
public String getAnimalClass() {
return "Cat";
}
@Override
public String shout() {
return "Meow Meow!";
}
}
```
Goat.java
```
public class Goat extends Animal {
@Override
public String getAnimalClass() {
return "Goat";
}
@Override
public String shout() {
return "Baa Baa!";
}
}
```
AnimalShoutTest.java
```
public class AnimalShoutTest {
public static void main(String[] args) {
Animal[] animals = {new Dog(), new Cat(), new Goat()};
for (Animal animal : animals) {
System.out.println(animal.getAnimalClass() + " shouts: " + animal.shout());
}
}
}
```
运行AnimalShoutTest类,输出结果如下:
```
Dog shouts: Woof Woof!
Cat shouts: Meow Meow!
Goat shouts: Baa Baa!
```
这个模拟器可以通过添加新的动物类来模拟更多种类的动物的叫声。
设计一个动物发生模拟器,用于模拟不同动物的叫声。比如狮吼、虎啸、狗旺旺、猫喵喵……。 定义抽象类Animal,包含两个抽象方法:获取动物类别getAnimalClass()、动物叫shout(); 然后基于抽象类Animal定义狗类Dog、猫类Cat和山羊Goat,用getAnimalClass()方法返回不同的动物类别(比如猫,狗,山羊),用shout()方法分别输出不同的叫声(比如喵喵、汪汪、咩咩)。 最后编写AnimalShoutTest类测试,输出: 猫的叫声:喵喵 狗的叫声:汪汪 山羊的叫声:咩咩 其中,在AnimalShoutTestMain类中,用speak(Animal animal){}方法输出动物animal的叫声,在main()方法中调用speak()方法,分别输出猫、狗和山羊对象的叫声。 请在下面的【】处添加代码。 //动物发生模拟器. 请在下面的【】处添加代码。 public class AnimalShoutTest2 { public static void main(String[] args) { Cat cat = new Cat(); Dog dog = new Dog(); Goat goat = new Goat(); speak(cat); speak(dog); speak(goat); } //定义静态方法speak() 【】 } //定义抽象类Animal 【】class Animal{ 【】 } //基于Animal类,定义猫类Cat,并重写两个抽象方法 class Cat 【】{ 【】 【】 } //基于Animal类,定义狗类Dog,并重写两个抽象方法 class Dog 【】{ 【】 【】 } //基于Animal类,定义山羊类Goat,并重写两个抽象方法 class Goat 【】{ 【】 【】 }
//动物发生模拟器.
public class AnimalShoutTest2 {
public static void main(String[] args) {
Cat cat = new Cat();
Dog dog = new Dog();
Goat goat = new Goat();
speak(cat);
speak(dog);
speak(goat);
}
//定义静态方法speak()
public static void speak(Animal animal){
System.out.println(animal.getAnimalClass() + "的叫声:" + animal.shout());
}
}
//定义抽象类Animal
abstract class Animal{
//获取动物类别
public abstract String getAnimalClass();
//动物叫
public abstract String shout();
}
//基于Animal类,定义猫类Cat,并重写两个抽象方法
class Cat extends Animal{
@Override
public String getAnimalClass() {
return "猫";
}
@Override
public String shout() {
return "喵喵";
}
}
//基于Animal类,定义狗类Dog,并重写两个抽象方法
class Dog extends Animal{
@Override
public String getAnimalClass() {
return "狗";
}
@Override
public String shout() {
return "汪汪";
}
}
//基于Animal类,定义山羊类Goat,并重写两个抽象方法
class Goat extends Animal{
@Override
public String getAnimalClass() {
return "山羊";
}
@Override
public String shout() {
return "咩咩";
}
}
阅读全文