Skip to content

Commit 7de9a0f

Browse files
committed
Update readme.md
1 parent eb5a8e8 commit 7de9a0f

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

flyweight/lvtea0105/readme.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ Android系统版本: 4.0
1515

1616
模式的使用场景
1717

18-
面向对象编程在某些情况下会创建大量的细粒度对象,它们的产生,存储,销毁都会造成资源和性能上的损耗,可能会在程序运行时形成效率瓶颈,在遇到以下情况时,即可考虑使用享元模式:
18+
面向对象编程在某些情况下会创建大量的细粒度对象,它们的产生,存储,销毁都会造成资源和性能上的损耗,
19+
可能会在程序运行时形成效率瓶颈,在遇到以下情况时,即可考虑使用享元模式:
1920
(1)一个应用程序使用了大量的对象,耗费大量的内存,降低了系统的效率。
2021
(2)这些对象的状态可以分离出内外两部分。
2122
(3)这些对象按照状态分成很多的组,当把删除对象的外部状态时,可以用相对较少的共享对象取代很多组对象。
@@ -30,7 +31,8 @@ Android系统版本: 4.0
3031

3132
(1)享元模式如何实现共享
3233

33-
将事物的共性共享,同时又保留它的个性。为了做到这点,享元模式中区分了内蕴状态(Internal State)和外蕴状态(External State)。内蕴状态就是共性,外蕴状态就是个性了。
34+
将事物的共性共享,同时又保留它的个性。为了做到这点,享元模式中区分了内蕴状态(Internal State)和
35+
外蕴状态(External State)。内蕴状态就是共性,外蕴状态就是个性了。
3436
内蕴状态存储在享元内部,不会随环境改变而变化,是可以共享的;
3537
外蕴状态是不可以共享的,它随环境的改变而变化,通常外蕴状态是由客户端来保持的(因为环境的变化是由客户端引起的)。
3638

@@ -47,7 +49,8 @@ Android系统版本: 4.0
4749

4850
复合享元模式
4951

50-
————将一些单纯享元使用合成模式加以复合,形成复合享元对象。复合享元对象本身是不能共享的,但是它们可以分解成能够进行共享的单纯享元对象。
52+
————将一些单纯享元使用合成模式加以复合,形成复合享元对象。复合享元对象本身是不能共享的,
53+
但是它们可以分解成能够进行共享的单纯享元对象。
5154

5255
抽象享元(Flyweight)角色 :给出一个抽象接口,以规定出所有具体享元角色需要实现的方法,外蕴状态以参数形式传入此方法。
5356
具体享元(ConcreteFlyweight)角色:实现抽象享元角色定义的接口。如果有内蕴状态的话,则必须为内蕴状态提供存储空间。

0 commit comments

Comments
 (0)