定义一个抽象类Shape,包含私有属性color,创建构造器为color赋值;包含计算周长的方法celperimeter()。 子类Triangle继承Shape,包含三边; 子类Circle继承Shape,包含半径radius
时间: 2024-05-13 13:14:36 浏览: 95
下面是Python代码实现:
```python
from abc import ABC, abstractmethod
class Shape(ABC):
def __init__(self, color):
self.color = color
@abstractmethod
def celperimeter(self):
pass
class Triangle(Shape):
def __init__(self, color, side1, side2, side3):
super().__init__(color)
self.side1 = side1
self.side2 = side2
self.side3 = side3
def celperimeter(self):
return self.side1 + self.side2 + self.side3
class Circle(Shape):
def __init__(self, color, radius):
super().__init__(color)
self.radius = radius
def celperimeter(self):
return 2 * 3.14 * self.radius
```
在上面的代码中,我们定义了一个抽象类 Shape,其中包含了私有属性 color 和一个抽象方法 celperimeter。在子类 Triangle 中,我们继承了 Shape 并实现了计算三角形周长的方法 celperimeter。在子类 Circle 中,我们也继承了 Shape 并实现了计算圆形周长的方法 celperimeter。
阅读全文