工厂方法
当一个类或者函数不知道它所需要创建的对象时,可以责成它的子类来创建目标对象,通过联合不同的子类,类或者函数可以根据需要使用相应的子类来创建所需要的对象。就好像是一个工厂根据消费者的需要进行定制化生产一样。
以下提供一个工厂方法的实现示例,在实际编程中,可以参考这个示例来编写实际的代码。
class Cake:
def __init__(self):
self.name = "cake"
def whoami(self):
return self.name
class Waffle:
def __init__(self):
self.name = "waffle"
def whoami(self):
return self.name
def food_factory(need="cake"):
bakers = {"cake": Cake, "waffle": Waffle}
return bakers[need]()
product = food_factory("waffle")
print(product.whoami())