具体代码不要数据 具体代码不要注释
时间: 2024-06-23 14:03:07 浏览: 6
在Python中,如果你想要实现一个多态的示例,你可以创建一个基类和一些派生类,并使用抽象方法或虚函数。这里是一个简单的例子:
```python
from abc import ABC, abstractmethod
# 基类定义了一个抽象方法
class Shape(ABC):
@abstractmethod
def area(self):
pass
# 派生类继承Shape并实现area方法
class Circle(Shape):
def __init__(self, radius):
self.radius = radius
def area(self):
return 3.14 * self.radius ** 2
class Square(Shape):
def __init__(self, side):
self.side = side
def area(self):
return self.side ** 2
# 创建实例并调用各自的方法,体现了多态
shapes = [Circle(5), Square(4)]
for shape in shapes:
print(f"Shape {type(shape)} has an area of {shape.area()}")
```
在这个例子中,`Shape`是一个抽象基类,`Circle`和`Square`是它的派生类。它们都实现了`area`方法,即使它们的实现方式不同。在`main`部分,你可以看到尽管`shapes`列表包含`Circle`和`Square`对象,但你可以通过`area`方法调用,而无需关心具体的子类类型。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)