定义一个抽象类Shape,它包含一个抽象方法getArea(),从Shape类派生出Rectangle和Circle类,这两个类都用getArea()方法计算对象的面积。编写应用程序使用Rectange和Circle类
时间: 2024-02-19 17:57:57 浏览: 32
好的,下面是对应的代码:
```python
# 定义抽象类 Shape
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def getArea(self):
pass
# 定义 Rectangle 类
class Rectangle(Shape):
def __init__(self, length, width):
self.length = length
self.width = width
def getArea(self):
return self.length * self.width
# 定义 Circle 类
class Circle(Shape):
def __init__(self, radius):
self.radius = radius
def getArea(self):
return 3.14 * self.radius ** 2
# 应用程序
if __name__ == '__main__':
rectangle = Rectangle(5, 10)
circle = Circle(7)
print('Rectangle area:', rectangle.getArea())
print('Circle area:', circle.getArea())
```
在这个例子中,我们定义了一个抽象类 Shape,它包含一个抽象方法 getArea()。然后我们从 Shape 类派生出 Rectangle 和 Circle 类,并且这两个类都实现了 getArea() 方法来计算对象的面积。
在应用程序中,我们创建了一个 Rectangle 对象和一个 Circle 对象,并且调用它们的 getArea() 方法来计算它们的面积。最后,我们打印出这两个图形的面积。