享元模式篇
标签: #Share
官方解释
享元模式(Flyweight Pattern)主要用于减少创建对象的数量,以减少内存占用和提高性能,这种类型的设计模式属于结构型模式,它提供了减少对象数量从而改善应用所需的对象结构的方式
享元模式的使用
1、JAVA 中的 String,如果有则返回,如果没有则创建一个字符串保存在字符串缓存池里面
2、数据库的数据池
官方示例
Head First:https://www.cnblogs.com/adamjwh/p/9070107.html
菜鸟教程:https://www.runoob.com/design-pattern/flyweight-pattern.html
工作举例
详情见:https://github.com/kkzhilu/KerwinTools/tree/master/src/main/java/design/pattern
享元模式相关
总结
/***
* 享元模式
* 主要解决:在有大量对象时,有可能会造成内存溢出,我们把其中共同的部分抽象出来,如果有相同的业务请求,直接返回在内存中已有的对象,避免重新创建
*
* 关键代码
* 1.构建产品类
* 2.构建享元工厂, 通过唯一的key进行判断,是否重复创建对象
* 3.通过key拿到对象后,根据set方法变化数据,达到想要的目的
*
* 值得注意
* 外部状态和内部状态的变化
*/
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!