結(jié)構(gòu)模式有7個小模式,下面分別說一下它們的思想:
1、門面模式(
Facade)也稱外觀模式
為子系統(tǒng)提供統(tǒng)一的接口,這個接口就叫門在了,客戶只需與門面來的交道,內(nèi)部調(diào)用那個功能模塊對客戶類來說是隱藏的。現(xiàn)實生活中去醫(yī)院看病撿藥的例子是一樣的。
2、代理模式(
Proxy)
有兩種方式一種是靜態(tài)代理,另一種是動態(tài)代理。代理模式就是為其它對象提供代理以控制對這個對象的訪問。
3、適配器模式(
Adapter)
將兩個不兼容的類糾合在一起使用,使用這個模式時,最好以面向接口的方式實一,而不用繼承。這是一個比較好理解的模塊,不需要看例程就應(yīng)該能回憶起它的結(jié)構(gòu)。
4、組合模式(Composite)
將對象以樹的形式組合起來,以達(dá)成整體與部份的結(jié)構(gòu)。并在類中提供添加,刪除,遍歷這三個方法。通常以操象類為父類來實現(xiàn)。
5、油漆工模式(Decorator)
說白了就是給一個類再添加些功能,通常可以在設(shè)計中可以使用繼承,再實現(xiàn)個接口。該模式可以避免這樣做,實一方法是在實現(xiàn)接口的類方法中,添中一些額外功能函數(shù)。
6、橋接模式(Bridge)
將操象與行為分離。
7、享元模式(Flyweight)
說白了就是一個Map 用來存儲對象時,先判斷Map中是否有該對象,如果有就不需再存進(jìn)。或者要從別的地方聯(lián)一個對象時,先在Map里找,如果找到就不用去別的地方了。有點類似于一個池。具體實現(xiàn)就不說了
posted on 2007-09-22 14:58
有貓相伴的日子 閱讀(330)
評論(1) 編輯 收藏 所屬分類:
Patterns