定义一个名为 Square 的类表示正方形,使其继承 Shape 抽象类,覆盖 Shape 类中的抽象方法 getPerimeter()和 getArea()
时间: 2023-06-10 08:02:30 浏览: 159
设计一个抽象类图形类,在该类中包含有至少两个抽象方法求周长和求面积,分别定义圆形类、长方形类、正方形类、三角形类来继承图形类,并实现上述两个方法
5星 · 资源好评率100%
好的,您的问题已经记录下来了。下面是我给您的代码实现:
```python
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def getPerimeter(self):
pass
@abstractmethod
def getArea(self):
pass
class Square(Shape):
def __init__(self, side):
self.side = side
def getPerimeter(self):
return 4 * self.side
def getArea(self):
return self.side * self.side
```
在上面的代码中,我们首先定义了一个抽象类 Shape,其中包含了两个抽象方法 getPerimeter()和 getArea()。然后我们定义了一个名为 Square 的类,它继承自 Shape 抽象类,并对抽象方法进行了实现。在 Square 类中,我们使用了一个构造函数 __init__(),它用于初始化正方形的边长。然后我们覆盖了 Shape 中的 getPerimeter()和 getArea() 方法,分别计算正方形的周长和面积。
当您创建一个 Square 的实例时,只需要传入正方形的边长作为参数即可:
```python
square = Square(5) # 创建边长为 5 的正方形
print(square.getPerimeter()) # 输出正方形的周长
print(square.getArea()) # 输出正方形的面积
```
如果您有任何问题,请告诉我,我会尽力帮助您。
阅读全文