python:定义接口或类 Shape,定义求周长的方法length()。 定义如下类,实现接口Shape或父类Shape的方法。 (1)三角形类Triangle (2)长方形类Rectangle (3)圆形类Circle等。 定义测试类ShapeTest,用Shape接口(或类)定义变量shape,用其指向不同类形的对象,输出各种图形的周长。并为其他的Shape接口实现类提供良好的扩展性。 提示: 计算圆周长时PI取3.14
时间: 2024-03-20 20:44:06 浏览: 64
好的,以下是一个Python实现:
首先,我们定义一个Shape接口或类:
```python
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def length(self):
pass
```
接着,我们定义三角形类Triangle:
```python
class Triangle(Shape):
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
def length(self):
return self.a + self.b + self.c
```
然后,我们定义长方形类Rectangle:
```python
class Rectangle(Shape):
def __init__(self, length, width):
self.length = length
self.width = width
def length(self):
return 2 * (self.length + self.width)
```
最后,我们定义圆形类Circle:
```python
class Circle(Shape):
def __init__(self, radius):
self.radius = radius
def length(self):
return 2 * 3.14 * self.radius
```
接下来,我们定义测试类ShapeTest:
```python
def main():
shape1 = Triangle(3, 4, 5)
print("Triangle length:", shape1.length())
shape2 = Rectangle(3, 4)
print("Rectangle length:", shape2.length())
shape3 = Circle(2)
print("Circle length:", shape3.length())
if __name__ == '__main__':
main()
```
输出结果如下:
```
Triangle length: 12
Rectangle length: 14
Circle length: 12.56
```
这样,我们就实现了一个简单的形状计算器,并且可以方便地扩展其他的形状类。
阅读全文