设计模式 (二十二)享元模式

版权声明:本文为博主原创文章,未经博主允许不得转载。转载请注明出处,并告知本人 https://blog.csdn.net/the_conquer_zzy/article/details/83659352

享元模式

享元模式是池技术的体现。定义如下: 使用共享对象可有效的支持大量的细粒度的对象。
目的是解决大象创建对象导致的内存溢出问题以及程序的效率问题。
享元模式中细粒度对象包含两种状态:

  • 内部状态。 内部状态是对象可共享出的信息,存储在享元内部且不会随环境改变而改变。
  • 外部状态。 外部状态是对象得以依赖的一个标记,岁环境改变而改变,不可以共享的状态。

享元模式目的就是运用共享技术,是细粒度对象可以共享,这里主要用到池技术。

享元模式的优点

  • 减少应用程序创建的对象,降低程序内存占用,增强程序性能

享元模式缺点

  • 提高系统复杂性

享元模式的使用场景

  • 系统中存在大量的相似对象
  • 需要使用缓冲池的场景
  • 享元模式要注意的问题

    • 线程安全问题

猜你喜欢

转载自blog.csdn.net/the_conquer_zzy/article/details/83659352