• Python设计模式----2.工厂模式


    工厂方法模式是简单工厂模式的衍生,解决了许多简单工厂模式的问题

    首先完全实现‘开-闭 原则’,实现了可扩展。其次更复杂的层次结构,可以应用于产品结果复杂的场合。

    工厂方法模式的对简单工厂模式进行了抽象。

    有一个抽象的Factory类(可以是抽象类和接口),这个类将不在负责具体的产品生产,而是只制定一些规范,具体的生产工作由其子类去完成。

    在这个模式中,工厂类和产品类往往可以依次对应。即一个抽象工厂对应一个抽象产品,一个具体工厂对应一个具体产品,这个具体的工厂就负责生产对应的产品。   

    代码:

    """设计模式--工厂模式"""
    class A():
        '''工厂类'''
        def __init__(self):
            self.classname = '工厂类'
     
    class A1(A):
        def run(self):
            print(self.classname + '-- this is A1')
     
    class A2(A):
        def run(self):
            print(self.classname + '-- this is A2')
     
     
    class B():
        '''接口基类'''
        def create(self):
            '''把要创建的工厂对象装配进来'''
            raise  NotImplementedError
     
    class B1(B):
        def create(self):
            return A1()
     
    class B2(B):
        def create(self):
            return A2()
     
     
    B1().create().run()
    B2().create().run()

    结果:

    工厂类-- this is A1
    工厂类-- this is A2
    

      

  • 相关阅读:
    第二阶段--个人冲刺--第七天
    学习进度条12
    第二阶段--个人冲刺--第六天
    第二阶段--个人冲刺--第五天
    第二阶段--个人冲刺--第四天
    第二阶段--个人冲刺--第三天
    从小工到专家阅读笔记03
    团队冲刺第一阶段第十天
    团队冲刺第一阶段第九天
    构建之法阅读笔记05
  • 原文地址:https://www.cnblogs.com/shiyixirui/p/12973796.html
Copyright © 2020-2023  润新知