设计一个Vehicle类,包含属性speed和方法move()。然后创建两个子类Car和Bicycle,它们都继承自Vehicle类,并重写move()方法以表示各自的移动方式。在主类中创建Car和Bicycle的对象,并调用它们的move()方法
时间: 2024-11-09 21:31:41 浏览: 74
设计一个简单的车辆模型,我们可以首先创建一个`Vehicle`基类,它有一个`speed`属性和一个通用的`move()`方法。接下来,我们将创建两个子类`Car`和`Bicycle`,它们继承自`Vehicle`并提供各自特有的移动方式。
```python
class Vehicle:
def __init__(self, speed):
self.speed = speed
def move(self):
raise NotImplementedError("Subclasses should implement this method.")
# 子类 Car,有自己的移动方式
class Car(Vehicle):
def move(self):
return f"Car is moving at {self.speed} km/h with wheels."
# 子类 Bicycle,也有自己的移动方式
class Bicycle(Vehicle):
def move(self):
return f"Bicycle is riding at {self.speed} km/h pedaling."
# 主程序
if __name__ == "__main__":
car_instance = Car(60)
bicycle_instance = Bicycle(25)
print(car_instance.move()) # 输出: Car is moving at 60 km/h with wheels.
print(bicycle_instance.move()) # 输出: Bicycle is riding at 25 km/h pedaling.
```
在这个例子中,`Car`和`Bicycle`分别重写了`move()`方法,展示了多态性,即虽然它们都是`Vehicle`类型的实例,但它们的行为却因子类的不同而异。这使得代码更模块化,易于扩展到更多的交通工具。
阅读全文