您的位置:首页 > 其它

设计模式总结之结构型模式

2012-02-05 20:59 423 查看
适配器模式
两个类所做的事情相同或相似,但是具有不同的接口。主要应用于希望复用一些现存的类,但是接口又与复用环境要求不同的情况。

Public override void Attack ()

{
Wjzf.进攻();

}
翻译者的attack时,外籍中锋的进攻执行。



装饰模式
动态的给一个对象添加一些额外的职责。也就是说装饰类作用的对象可以是没有装饰过的对象,也可以是已经装饰过的对象。这就意味着同一个接口,可以作用于任意的对象,不管它是否已经被作用过,也就是可以为已有功能动态的添加更多的功能。可以有选择的使用其中的功能,而不是全部都使用。



桥接模式
实现系统可能有多个角度分类,每一种每类都有可能变化,那么就把这种多角度分离出来让他们独立变化,减少耦合。



组合模式
需求中体现部分与整体层次的结构时,希望用户可以忽略组合对象与单个对象的不同,统一的使用组合结构中的所有对象。基本对象可以被组合为更复杂的组合对象,而这个组合对象又可以被组合。用户不用关心到底是处理一个叶节点还是处理一个组合组件。



 



享元模式
享元模式实现了复用,可以避免大量非常相似类的开销.如果发现除了几个参数外基本都是相同的,有时就能大幅度的减少需要实例化的类的数量,如果能把参数移到类实例的外面,在方法调用时将它们传递进来,就可以通过共享大幅度的减少单个实例的数目.



 
代理模式
为其他对象提供一种代理以控制对这个对象的访问.实际上我感觉代理模式跟适配器模式相似,都是起到一个中间者的角色.同样代理其实就相当于一个它所代表的实体,只不过使用代理模式,可以隐藏一个对象存在于不同地址空间的事实,可以控制真实对象访问时的权限等等.



Class Proxy

{
Public overrideRequest()

{

Realsubject.request();

}

}
外观模式
外观模式简单点说就是把一组统一调用的子系统放在外观类中,这样便于客户操作,客户可以不用知道具体的子系统,只要与一个外观类打交道就行。
例子:买股票,买进几只股票,卖出几只股票都放在一个外观类中。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  设计模式