手写工厂模式demo
时间: 2024-03-06 11:45:35 浏览: 22
工厂模式是一种常用的设计模式,它通过定义一个创建对象的接口,但具体的对象创建逻辑由子类决定。手写一个简单的工厂模式的示例代码如下:
```python
# 定义一个抽象产品类
class Product:
def operation(self):
pass
# 定义具体产品类A
class ConcreteProductA(Product):
def operation(self):
print("具体产品A的操作")
# 定义具体产品类B
class ConcreteProductB(Product):
def operation(self):
print("具体产品B的操作")
# 定义工厂类
class Factory:
def create_product(self, product_type):
if product_type == "A":
return ConcreteProductA()
elif product_type == "B":
return ConcreteProductB()
else:
return None
# 使用示例
factory = Factory()
product_a = factory.create_product("A")
product_a.operation() # 输出:具体产品A的操作
product_b = factory.create_product("B")
product_b.operation() # 输出:具体产品B的操作
```
上述代码中,抽象产品类`Product`定义了一个`operation`方法,具体产品类`ConcreteProductA`和`ConcreteProductB`继承自抽象产品类,并实现了自己的`operation`方法。工厂类`Factory`负责根据传入的产品类型创建对应的具体产品对象。