定义类Animal,仅包含一个成员方法call(),无需给出方法实现。定义Cat类和Dog类,均继承自Animal类,并重写call()方法。在主类Test中,创建Cat类和Dog类对象,用多态实现输出每种动物的叫声。 7用JAVA
时间: 2024-11-12 20:32:54 浏览: 23
在Java中,你可以按照以下步骤来定义类并实现多态:
首先,我们定义一个基础类`Animal`,它有一个空的`call()`方法:
```java
public abstract class Animal {
public abstract void call();
}
```
然后,我们定义两个具体的子类`Cat`和`Dog`,它们都继承`Animal`并实现了`call()`方法:
```java
public class Cat extends Animal {
@Override
public void call() {
System.out.println("猫叫:喵~");
}
}
public class Dog extends Animal {
@Override
public void call() {
System.out.println("狗叫:汪汪!");
}
}
```
最后,在主类`Test`中,我们可以创建`Cat`和`Dog`对象,并通过`Animal`类型的引用进行操作,这展示了多态:
```java
public class Test {
public static void main(String[] args) {
Animal cat = new Cat(); // 创建Cat对象赋值给Animal类型的变量
Animal dog = new Dog(); // 创建Dog对象同样赋值给Animal类型的变量
cat.call(); // 调用cat的call()方法,输出"猫叫:喵~"
dog.call(); // 调用dog的call()方法,输出"狗叫:汪汪!"
// 这里体现了多态,虽然引用类型是Animal,但是实际调用的是各自子类的方法
}
}
```
阅读全文