1.多态的实现 (1)定义一个抽象类Animal,包含一个抽象方法eat()。(2)定义三个具体的动物类:Bird、Fish、Cat,它们都继承Animal类,并实现eat0)方法。 (3)定义一个接口IPet,包含两个方法:play(和 getName()用java编写
时间: 2024-03-19 14:43:27 浏览: 69
实验4-多态与抽象类.doc
以下是多态的实现示例,使用 Java 编写:
```java
// 抽象类 Animal
abstract class Animal {
public abstract void eat();
}
// 具体类 Bird,Fish,Cat
class Bird extends Animal {
public void eat() {
System.out.println("Bird is eating.");
}
}
class Fish extends Animal {
public void eat() {
System.out.println("Fish is eating.");
}
}
class Cat extends Animal {
public void eat() {
System.out.println("Cat is eating.");
}
}
// 接口 IPet
interface IPet {
void play();
String getName();
}
// 实现具体接口类 Pet
class Pet implements IPet {
private String name;
public Pet(String name) {
this.name = name;
}
public void play() {
System.out.println(name + " is playing.");
}
public String getName() {
return name;
}
}
public class Test {
public static void main(String[] args) {
// 多态的应用
Animal[] a = new Animal[3];
a[0] = new Bird();
a[1] = new Fish();
a[2] = new Cat();
for (int i = 0; i < 3; i++) {
a[i].eat();
}
IPet p = new Pet("Tom");
p.play();
System.out.println(p.getName());
}
}
```
这个示例中,定义了一个抽象类 Animal,它包含一个抽象方法 eat(),然后定义了三个具体的动物类 Bird、Fish、Cat,它们都继承自 Animal 并实现了 eat() 方法。接着定义了一个接口 IPet,它包含两个方法 play() 和 getName(),然后实现了一个具体的类 Pet,它实现了 IPet 接口。最后在主函数中,使用多态的思想创建了 Animal 对象数组和 IPet 对象,并且通过接口调用了对应的方法。
阅读全文