)采用面向对象编程语言实现该工厂方法模式,并写测试程序main0进行测试。
时间: 2024-02-20 15:01:56 浏览: 30
好的,以下是采用 Python 语言实现该工厂方法模式的完整代码,并附上测试程序 main0 进行测试:
```python
# 定义抽象的形状类
class Shape:
def draw(self):
pass
# 定义具体的矩形类
class Rectangle(Shape):
def draw(self):
print("Drawing Rectangle")
# 定义具体的圆形类
class Circle(Shape):
def draw(self):
print("Drawing Circle")
# 定义形状工厂类
class ShapeFactory:
def createShape(self, shapeType):
if shapeType == "Rectangle":
return Rectangle()
elif shapeType == "Circle":
return Circle()
else:
return None
# 测试程序
def main0():
# 创建形状工厂对象
factory = ShapeFactory()
# 创建矩形对象
rectangle = factory.createShape("Rectangle")
rectangle.draw()
# 创建圆形对象
circle = factory.createShape("Circle")
circle.draw()
if __name__ == '__main__':
main0()
```
运行测试程序 main0,输出结果如下:
```
Drawing Rectangle
Drawing Circle
```
可以看到,测试程序成功地创建了矩形和圆形对象,并且根据不同的形状类型创建了对应的形状对象,实现了形状对象的统一创建管理。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)