设计模式 - 单例模式、享元模式

相似及区别

单例模式和享元模式都是数据共用的意思,及大家共用某个东西,只是单例是大家共用一个东西,而享元是共用多个东西,当然享元的特例就是单例(但是实现时有很大的区别)。


享元UML

设计模式 - 单例模式、享元模式_第1张图片


享元案例

享元使用得场合并不多,一个很经典的用法就是《大话设计模式》上提到的一个,.NET里面的string使用享元模式,如果string A = “123”, string B = “123”,A和B对应的“123”字符串在内存里只有一份,也就是A和B共用一块内存,这个时候如果还有string C = “abc”,这个时候内存里有两个,一个是“123”,一个是“abc”,这样可以节省一定的内存。

你可能感兴趣的:(设计模式 - 单例模式、享元模式)