zoukankan      html  css  js  c++  java
  • Python设计模式(2)-策略模式

    # 策略模式和简单工厂模式相比,少了使用switch case 做判断,然后去实例化相应的
    # 对象,比简单工厂模式更灵活。 它们代码的区别就在于此处使用了抽象类代替工厂类


    # coding=utf-8
    class DbManager:
    def __init__(self):
    pass

    def operate_db(self):
    pass


    class DbInsert(DbManager):
    def operate_db(self):
    print '插入操作'


    class DbDel(DbManager):
    def operate_db(self):
    print '删除操作'


    class DbUpdate(DbManager):
    def operate_db(self):
    print '更新操作'


    class DbQuery(DbManager):
    def operate_db(self):
    print '查询操作'


    class UnDef(DbManager):
    def operate_db(self):
    print '未实现'
    return 0


    class Strategy:
    def __init__(self, strategy):
    self.stra = strategy

    def operate_db(self):
    return self.stra.operate_db()


    if __name__ == "__main__":
    strategy = Strategy(DbDel())

    print strategy.operate_db()
  • 相关阅读:
    创建pdf
    IOS绘图
    IOS断点续传
    IOS程序之间的跳转
    MBProgressHUD的使用
    清除缓存的方法(计算)
    使用post请求下载数据
    NSTimer的使用
    定位功能(使用系统地图)
    fork仓库保持同步更新
  • 原文地址:https://www.cnblogs.com/zijiyanxi/p/5273140.html
Copyright © 2011-2022 走看看