锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

python设计模式 工厂方法模式

时间:2022-10-22 03:30:01 贴片二极管bfp

需要添加新的程序扩展:产品类别 与 工厂类
添加新需求不需要修改旧代码

from abc import ABCMeta, abstractmethod   # 产品:产品1 产品2 产品3 # 工厂:工厂1 工厂2 工厂3 # 抽象一类产品 # 工厂抽象一类 # 每种产品都是一类 class A(metaclass=ABCMeta):     @abstractmethod     def print_(self, money):         pass   class A1(A):     def print_(self, money):         print("A1产品", money)   class A2(A):     def print_(self, money):         print("A2产品", money)   class A3(A):     def print_(self, money):         print("A3产品", money)   # 工厂接口创建产品 class B(metaclass=ABCMeta):     @abstractmethod     def print_str(self):         pass   # 工厂类1 class B1(B):     def print_str(self):         return A1()   # 工厂类2 class B2(B):     def print_str(self):
        return A2()


# 工厂类3
class B3(B):
    def print_str(self):
        return A3()


# 工厂1 工厂通用方法
bfp = B1().print_str()
# 产品方法
bfp.print_(100)

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章