头歌设计一个 Shape 类和它的两个子类 Square 和 Circle。
时间: 2024-01-21 15:18:09 浏览: 22
好的,下面是一个简单的实现:
```python
class Shape:
def area(self):
pass
def perimeter(self):
pass
class Square(Shape):
def __init__(self, side):
self.side = side
def area(self):
return self.side ** 2
def perimeter(self):
return 4 * self.side
class Circle(Shape):
def __init__(self, radius):
self.radius = radius
def area(self):
return 3.14 * self.radius ** 2
def perimeter(self):
return 2 * 3.14 * self.radius
```
在上面的代码中,我们定义了一个 `Shape` 类,它有两个方法 `area()` 和 `perimeter()`,它们分别用于计算形状的面积和周长。然后我们定义了两个子类 `Square` 和 `Circle`,它们都继承了 `Shape` 类,并实现了自己的 `area()` 和 `perimeter()` 方法。
`Square` 类表示正方形,它有一个参数 `side` 表示边长。它的 `area()` 方法计算正方形的面积,`perimeter()` 方法计算正方形的周长。
`Circle` 类表示圆形,它有一个参数 `radius` 表示半径。它的 `area()` 方法计算圆形的面积,`perimeter()` 方法计算圆形的周长。
这样,我们就可以根据需要创建正方形和圆形对象,并调用它们的方法来计算面积和周长。