登陆注册
8183300000091

第91章 6 享元模式特征

大B:“你知道享元模式有哪些特征吗?”

小A:“享元模式包括有单纯享元模式和复合享元模式。他们都有不同的角色不同的特征。”

大B:下面我来具体说说。

首先单纯享元模式,它有抽象享元角色、具体享元角色、享元工厂角、客户端角色。

抽象享元角色:所有的具体享元类的超类,规定出需要实现的公共接口。那些需要外蕴状态的操作可以通过方法的参数传入。

具体享元角色:实现抽象享元角色所规定的接口。如果有内蕴状态的话,必须负责为内蕴状态提供存储空间。享元对象的内蕴状态必须与对象所处的周围环境无关,从而使得享元对象可以在系统内共享。

享元工厂角色:负责创建和管理享元角色。本角色必须保证享元对象可以被系统适当地共享。当一个客户端对象调用一个享元对象时,享元工厂角色会检查系统中是否已经有一个符合要求的享元对象。如果有,享元工厂就提供这个已经有的享元对象,如果没有,享元工厂创建一个适当的享元对象。

客户端角色:需要维护一个对所有享元对象的引用。本角色需要自行存储所有享元对象的外蕴状态。

还有就是复合享元模式,它有抽象享元角色、具体享元角色、复合享元角色、享元工厂角、客户端角色。

抽象享元角色:所有的具体享元类的超类,规定出需要实现的公共接口。那些需要外蕴状态的操作可以通过方法的参数传入。抽象享元的接口使得享元变得可能,但是并不强制子类实行共享,因此并非所有的享元对象都是可以共享的。

具体享元角色:实现抽象享元角色所规定的接口。如果有内蕴状态的话,必须负责为内蕴状态提供存储空间。享元对象的内蕴状态必须与对象所处的周围环境无关,从而使得享元对象可以在系统内共享。

复合享元角色是由具体享元角色通过复合而成。复合享元角色:复合享元角色所代表的对象是不可以共享的,但是可以分解成多个可以共享的具体享元角色。

享元工厂角色:负责创建和管理享元角色。本角色必须保证享元对象可以被系统适当地共享。当一个客户端对象调用一个享元对象时,享元工厂角色会检查系统中是否已经有一个符合要求的享元对象。如果有,享元工厂就提供这个已经有的享元对象,如果没有,享元工厂创建一个适当的享元对象。

客户端角色:需要维护一个对所有享元对象的引用。本角色需要自行存储所有享元对象的外蕴状态。

大B:“你说一下享元模式适用于哪些地方?”

小A:“好的。Flyweight模式的有效性很大程度上取决于如何使用它以及在何处使用它。当以下情况都成立时使用Flyweight模式。1、一个应用程序使用了大量的对象。2、完全由于使用大量的对象,造成很大的存储开销。3、对象的大多数状态都可变为外部状态。4、如果删除对象的外部状态,那么可以用相对较少的共享对象取代很多组对象。5、应用程序不依赖对象标识。”

同类推荐
  • 多媒体技术

    多媒体技术

    多媒体技术多媒体技术多媒体技术多媒体技术多媒体技术多媒体技术多媒体技术多媒体技术多媒体技术多媒体技术多媒体技术
  • 如何组装电脑

    如何组装电脑

    本书以问答的形式介绍了组装电脑的基本知识。内容包括:电脑硬件的部件组成、CPU的发展历程、CPU主频、内存的组成、内存的主要性能参数等。
  • 信息技术教育大全-计算机网络

    信息技术教育大全-计算机网络

    信息技术教育大全-计算机网络信息技术教育大全-计算机网络信息技术教育大全-计算机网络信息技术教育大全-计算机网络信息技术教育大全-计算机网络信息技术教育大全-计算机网络信息技术教育大全-计算机网络
  • FlashCS动画制作基础

    FlashCS动画制作基础

    适合爱好flash动画制作的初、中级读者作为入门学习的参考书,还可以供从事网页制作与动画设计的人员参考,同时也可以作为初、中级电脑短训班的培训教材,对有一定经验的flashcs5使用者也有很高的参考价值。
  • 互联网创业前奏曲(第二部)——网站运营之人性、策略与实战

    互联网创业前奏曲(第二部)——网站运营之人性、策略与实战

    本书是《互联网创业前奏曲》系列的第二本书,是作者多年互联网实践经验和业界观察的总结,是国内罕有的关于互联网网站运营和用户心理结合的书籍,用通俗的语言阐述互联网运营背后的人性驱动。你想互联网创业吗?你是否在为找不到好的互联网运营策略和方法而发愁?你非常想了解互联网行业?你是否在为自己不了解互联网运营而苦恼?本书针对这些问题列举了很多互联网运营的案例,帮你制定运营策略,更好的修炼和提升运营功力。
热门推荐
  • 仙逆之路

    仙逆之路

    一颗魔心扰乱万界平静,降临灵气大陆。既然重生一次,何不逍遥快活!人转魔神,涅槃再生,我管你人鬼魔神!我惧你天资无量!我怕你仙坠大陆!这世间何为巅峰,何为生死,是看破虚妄,还是死而复生?我的道路可从未结束……
  • 广告销售老鸟成长记

    广告销售老鸟成长记

    优秀的广告销售人员与一般的广告销售人员的关键区别在于前者善于提问和聆听,后者习惯喋喋不休地推荐广告投放方案。所以,要想成为广告销售高手(老鸟),不只要学习销售技巧和谈判技巧,更要学习提问与聆听的技巧,即是否善于闭上我们的“鸟嘴”。作者研究了几千个案例,涉及电视、广播、报纸、杂志、户外、直邮、电梯、网络等各种媒体,结合切身实践及有关专家的研究成果,总结出提问与聆听的三个套路和六个技巧,对广大广告销售从业人员有重要的参考借鉴作用。本次修订根据广告销售发展形势进行了一些更新,使之更适合现在的实际情况。
  • 旁支

    旁支

    修行中那个身份最悲剧?落魄的天才?评价中的废材?仗势欺人的大家族子弟?都不是!而是那个看着像是大家族,好像有点实力,不过是被打压的旁支,还得担心家族中其他人给你惹祸上身,这才是悲剧!
  • 人力资源开发与管理

    人力资源开发与管理

    本书内容包括:人力资源开发与管理导论、人力资源规划、工作分析、人员招聘与配置、人员培训与开发、绩效考评与管理、员工激励、薪酬管理、劳动关系管理等。
  • 异界仙君转世

    异界仙君转世

    异世界震慑八荒的武陵仙君惨遭暗算转世到性格内向从小就受别人欺负的男主身上经历一次次的坎坷从此威震四方!
  • 小师叔有好多法宝

    小师叔有好多法宝

    小师叔的简介是真的简AI穿越修仙世界意外变成人,被师父带回仙门修行还捡了个妹妹小七。平日在仙门里种种地养养牛,炼炼丹炼炼器,无聊就给小七画些漫画做些小游戏玩。打架斗法打不过就放大招:关门,放小七!不能再多了,再多就不简了!
  • 日毕

    日毕

    世事洞明皆学问,学问来自实生活,生活要有老牛耕,记录生活感悟,五位奇谈。
  • 变异进化者

    变异进化者

    三年活埋,重出天日时,这个世界已经不是原来熟悉的世界。人类在进化,科技在锐变。外族人在观望,人类在自相残杀。唯有变强,不停的进化,才能主宰自己的命运!
  • 女神云备胎

    女神云备胎

    这本书已废。期待大伙支持刀九新书《驭兽狂潮》。该书走驭兽和洪荒流,前期无厘头,后期庞大洪荒......
  • 邪鳄

    邪鳄

    邪者恶也!鳄者凶也!邪鳄之人,亦邪亦鳄也!一个谢姓之人,命运惊变之下,成为邪某人。血腥诡诈的修炼之旅,爱恨交织的肆意仙途。待看他,如何一步步,披荆斩棘,踏血走来!身犹在,铁鞋未踏天下之路!心何哀,大志未泯乾坤谁定!《邪鳄》邀您一同踏入,一位擎天巨枭的血色征途!