3.利用多态性,编程创建一个车辆类 Vehicle ,定义一个开车方法 drive )。< 创建车辆类的两个子类:轿车子类 Car 和摩托车子类 Motorcycle ,并在各自类中重写方法 dri
时间: 2024-10-10 08:02:59 浏览: 59
VC中第一个类的案例分析共7页.pdf.zip
在编程中,利用多态性可以创建一个通用的 Vehicle 类作为基础模板,然后为其设计两个具体的子类 Car 和 Motorcycle。这里是一个简单的示例:
```java
// 定义一个抽象 Vehicle 类
public abstract class Vehicle {
// 公共方法,将在子类中被重写
public abstract void drive();
}
// 轿车子类 Car,继承自 Vehicle
public class Car extends Vehicle {
@Override
public void drive() {
System.out.println("轿车正在驾驶...");
}
}
// 摩托车子类 Motorcycle,也继承自 Vehicle
public class Motorcycle extends Vehicle {
@Override
public void drive() {
System.out.println("摩托车正在骑乘...");
}
}
// 主程序中演示多态性
public class Main {
public static void main(String[] args) {
Vehicle car = new Car(); // 创建轿车实例
Vehicle motorcycle = new Motorcycle(); // 创建摩托车实例
car.drive(); // 输出 "轿车正在驾驶..."
motorcycle.drive(); // 输出 "摩托车正在骑乘..."
// 使用Vehicle类型的引用,动态调用子类方法
Vehicle vehicle = car; // 将car赋值给vehicle
vehicle.drive(); // 输出 "轿车正在驾驶..."
vehicle = motorcycle;
vehicle.drive(); // 输出 "摩托车正在骑乘..."
}
}
```
在这个例子中,`drive()` 方法在 Vehicle 类中声明为抽象方法,让子类必须实现它。Car 和 Motorcycle 类通过继承 Vehicle 并重写 `drive()` 方法,实现了对同一个接口的不同行为。在主程序中,我们看到无论是轿车还是摩托车,调用 `drive()` 都会得到相应子类的行为,这就是多态性的体现。
阅读全文