使用php,新建一个抽象类Vehicle类,创建一个抽象方法run()方法;创建Vehicle类的三个子类,汽车类Motor、轮船类Ship,并写出每个子类对应的run()方法;汽车类Motor有两个子类,公共汽车类Bus和小汽车类Car,分别重写的run()方法。
时间: 2024-10-14 08:15:42 浏览: 23
在PHP中,你可以首先定义一个名为`Vehicle`的抽象类,它包含一个抽象方法`run()`。抽象方法是一个没有具体实现的方法,只声明了方法名,需要在具体的子类中提供实现。
```php
abstract class Vehicle {
abstract public function run();
}
// 子类:汽车类Motor
class Motor extends Vehicle {
public function run() {
echo "Motor is running.";
}
}
// 轮船类Ship
class Ship extends Vehicle {
public function run() {
echo "Ship is sailing.";
}
}
// 汽车类Motor的两个子类:公共汽车类Bus和小汽车类Car
class Bus extends Motor {
public function run() {
echo "Public bus is driving.";
}
}
class Car extends Motor {
public function run() {
echo "Small car is accelerating.";
}
}
```
在这个例子中,`Motor`和`Ship`都有各自的`run()`实现,而它们各自的子类如`Bus`和`Car`通过继承`Motor`并重写`run()`方法,展示出了多态性。当你实例化并调用`run()`方法时,会根据实际的对象类型执行相应的实现。例如:
```php
$vehicle = new Motor(); // 或者 $bus = new Bus();
$vehicle->run(); // 输出 "Motor is running."
$bus->run(); // 输出 "Public bus is driving."
```
阅读全文