设计模式专辑——对象池模式、多例模式、享元模式的比较
>>版权声明:本文为原创文章,请不要拷贝转载。
1.比较
(多例模式)
(享元模式)
这三个模式都会对实例对象进行维护、复用。
但就设计目的而言,多例模式就如单例一样,纯粹是为了控制实例数量,使用这种模式的类,通常是作为程序某个模块的入口。
享元和对象池的设计目的相近,主要是为了节省系统资源,它们维护和共享的通常是某种资源。
享元模式是结构型模式。这意味着,它的侧重点是对象之间的衔接。它把动态的、会变化的状态剥离,外部化,共享不变的东西。但是这部分外部化的东西和享元模式内部共享的不会变的东西之间存在关联。所以享元对外提供的接口常常会包含一个String类型的参数,表示key、名称之类。
而对象池是构造型模式,侧重于提供对象实例。对调用者而言对象池提供的对象都没有区别,这个可以用,那个也可以用。
注:图片来自维基百科。
喜欢的话可以打赏一下哦!!!
支付宝
微信