动物类(Animal)是抽象类,包含抽象方法cry。 2、子类包括猫(Cat) 和狗(Dog),子类Cat和Dog重写了父类Animal的cry方法。 3、女士类(Lady)与Animal类之间是关联关系,一位女士只能拥有一只宠物。
时间: 2024-01-17 11:03:50 浏览: 37
好的,以下是一个基于您的要求创建的Java代码示例:
```java
// Animal类
public abstract class Animal {
protected String name;
public Animal(String name) {
this.name = name;
}
public abstract void cry();
}
// Cat类
public class Cat extends Animal {
public Cat(String name) {
super(name);
}
@Override
public void cry() {
System.out.println(name + "喵喵叫");
}
}
// Dog类
public class Dog extends Animal {
public Dog(String name) {
super(name);
}
@Override
public void cry() {
System.out.println(name + "汪汪叫");
}
}
// Lady类
public class Lady {
private String name;
private Animal pet;
public Lady(String name, Animal pet) {
this.name = name;
this.pet = pet;
}
public void play() {
System.out.print(name + "和它的宠物" + pet.name + "一起玩,");
pet.cry();
}
}
```
在这个示例中,我们定义了 `Animal` 抽象类,其中包含了 `name` 属性和 `cry()` 抽象方法。我们还定义了 `Cat` 和 `Dog` 两个子类,它们都重写了 `cry()` 方法。
我们还定义了 `Lady` 类,它包含了 `name` 属性和 `pet` 属性,`pet` 属性是一个 `Animal` 对象,即这位女士拥有的宠物。 `Lady` 类中还定义了 `play()` 方法,用于模拟女士和宠物一起玩的场景。在 `play()` 方法中,我们调用了 `pet.cry()` 方法,这个方法实际上会调用具体宠物类中重写的 `cry()` 方法。
这个示例中,我们使用了继承和多态的特性,使得代码更加灵活和可扩展。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)