创建一个AnimalShelter(动物收容所)类,其中定义一个adopt(接收)方法,该方法接受一个Animal类型的参数。然后创建几个具体的动物类,并让它们继承自一个共同的Animal类。在mai
时间: 2024-10-23 22:08:16 浏览: 38
创建一个`AnimalShelter`类,可以按照以下步骤设计:
```java
// 定义一个 Animal 类作为所有动物的基础类
abstract class Animal {
// 每个动物都有名字
protected String name;
public Animal(String name) {
this.name = name;
}
// 具体实现由子类提供
abstract void makeSound();
// 提供通用的领养方法,返回是否收容成功(这里简化处理)
public boolean adopt() {
System.out.println(name + " is adopted.");
return true; // 假设默认都收容
}
// 显示动物的声音
public void displaySound() {
makeSound();
}
}
// 定义具体的动物子类,如Dog、Cat
class Dog extends Animal {
public Dog(String name) {
super(name);
}
@Override
void makeSound() {
System.out.println("Woof!");
}
}
class Cat extends Animal {
public Cat(String name) {
super(name);
}
@Override
void makeSound() {
System.out.println("Meow!");
}
}
public class Main {
public static void main(String[] args) {
// 创建并初始化动物收容所
AnimalShelter shelter = new AnimalShelter();
// 领养动物
Dog dog = new Dog("Rex");
shelter.adopt(dog); // 输出 "Rex is adopted."
// 尝试领养另一个动物,这里假设AnimalShelter 收容所有动物
Cat cat = new Cat("Mimi");
shelter.adopt(cat); // 输出 "Mimi is adopted."
// 展示动物声音
dog.displaySound(); // 输出 "Woof!"
cat.displaySound(); // 输出 "Meow!"
}
}
```
阅读全文