zoukankan      html  css  js  c++  java
  • 享元模式

    1、享元模式:运用共享技术有效地支持大量细粒度的对象。
    2、优点:(1)、享元模式可以避免大量非常相似类的开销。在程序设计中,有时需要生成大量细粒度的实例来表示数据。如果能发现这些实例处理几个参数外都是相同的,有时能够大幅度减少需要实例化的类的数量。如果能把那些参数移动到类实例的外面,在方法调用时将它们传递进来,就可以通过共享大幅度减少单个实例的数目。(2)、由于代码共享,如果以后修改也会相对方便。
    3、应用:(1)、如果一个应用使用了大量的对象,而打俩个的这些对象造成了很大的存储开销时就应该考虑使用;(2)、对象的大多数状态可以外部状态,如果删除对象的外部状态,那么可以用相对较少的共享对象取代很多组对象,此时可以考虑使用享元模式。
    4、组成
    (1) 、抽象享元角色:为具体享元角色规定了必须实现的方法,而外蕴状态就是以参数的形式通过此方法传入。
    (2) 、具体享元角色:实现抽象角色规定的方法。如果存在内蕴状态,就负责为内蕴状态提供存储空间。
    (3) 、享元工厂角色:负责创建和管理享元角色。要想达到共享的目的,这个角色的实现是关键!
    (4) 、客户端角色:维护对所有享元对象的引用,而且还需要存储对应的外蕴状态。
  • 相关阅读:
    腾讯社招 —— 腾讯游戏后端工程师-电话面试
    乐刷科技-Java工程师社招面试
    平安人寿保险-深圳Java开发工程师社招面试
    字节跳动-后端工程师社招视频一面
    Markdown的常用使用语法
    oracle 表空间大小
    mysql、sqlserver、oracle获取最后一条数据
    mycat 学习
    oracle sql中特殊字符 & 的处理
    map循环
  • 原文地址:https://www.cnblogs.com/zxtp/p/4960507.html
Copyright © 2011-2022 走看看