Advertisement

java设计模式-单责任原则

阅读量:

享元模式主要针对的是处理大量对象的情况。这种情况下可能会导致内存溢出问题。当系统处理相同业务请求时,共享机制能够使得能够复用内存中的现有对象资源,并省去了重新创建对象的过程。其核心理念在于通过资源复用来减少不必要的计算开销。

享元模式的核心在于实现同一或近似的对象实例间的共享复用机制,在这种模式下主要分享的是同一对象实例之间的共性,并对外提供接口以暴露不同对象实例间的差异性特征,在享元模式中这些差异性特征被分别对应为内部状态与外部状态

接口暴露即为对象可变更的部分,在系统设计中被定义为外部状态;而那些通过特定设置无法被共享的属性则被视为内部状态。此外,在系统架构中规定外部状态的变化不会影响到内部系统的稳定性。

重要的一点在于区分物体的可变属性和不可变属性。这些可变属性会被提取为接口,在分享对象时需要让外部自行设定这些值。不会改变的属性能够被有效地共享出去。

日常开发中能够传递的状态数量有限因此通过享元模式实现的对象通常都会被设计成规模较小的具体实例这些实例所承载的状态信息相对较少这使得它们也被形象地称为细粒度对象所谓状态含量较低的意思就是说在这种对象设计中大部分属性值都是由外部环境动态决定的而不是预先固定设置好的

我们致力于通过共享技术来高效地复用大量细粒度的对象。

在这样的业务场景下, 涉及不同类型的玩具对象. 其中尺寸参数已经被预先配置好; 色彩属性可以在外部根据具

全部评论 (0)

还没有任何评论哟~