定义一个抽象类,声明计算长方形面积和周长的函数,再用一个类去实现这个抽象类。
时间: 2023-05-11 09:07:18 浏览: 122
好的,这是一个典型的面向对象编程问题。下面是代码实现:
```python
from abc import ABC, abstractmethod
class Rectangle(ABC):
@abstractmethod
def area(self):
pass
@abstractmethod
def perimeter(self):
pass
class RectangleImpl(Rectangle):
def __init__(self, length, width):
self.length = length
self.width = width
def area(self):
return self.length * self.width
def perimeter(self):
return 2 * (self.length + self.width)
# 示例代码
rect = RectangleImpl(5, 10)
print("长方形的面积为:", rect.area())
print("长方形的周长为:", rect.perimeter())
```
这段代码定义了一个抽象类 `Rectangle`,其中声明了两个抽象方法 `area` 和 `perimeter`,分别用于计算长方形的面积和周长。然后定义了一个实现类 `RectangleImpl`,该类继承了 `Rectangle` 抽象类,并实现了其中的两个抽象方法。最后,我们可以创建一个 `RectangleImpl` 的实例,并调用其 `area` 和 `perimeter` 方法来计算长方形的面积和周长。