Python享元模式

享元模式,对可以共享的属性对象进行共享,无法共享的属性独立存储。

class Obj:
    def __init__(self, value):
        self.content = value

    def __str__(self):
        return self.content


class Share(object):
    def __init__(self):
        super().__init__()
        self.dct = {}

    def __getitem__(self, item):
        return self.dct.get(item, None)

    def __setitem__(self, key, value):
        self.dct[key] = value


def main():
    share = Share()
    share['one'] = Obj("a")
    share['two'] = Obj("b")
    share['one'] = Obj("c")
    one = share['one']
    print(str(one))


if __name__ == '__main__':
    main()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1 场景问题# 1.1 加入权限控制## 考虑这样一个问题,给系统加入权限控制,这基本上是所有的应用系统都有的功能...
    七寸知架构阅读 2,506评论 1 57
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,859评论 18 139
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,096评论 6 13
  • 设计模式汇总 一、基础知识 1. 设计模式概述 定义:设计模式(Design Pattern)是一套被反复使用、多...
    MinoyJet阅读 3,961评论 1 15
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,742评论 18 399