设计模式之结构型模式一

设计模式之结构型模式一

ID:6672523

大小:92.00 KB

页数:9页

时间:2018-01-22

设计模式之结构型模式一_第1页
设计模式之结构型模式一_第2页
设计模式之结构型模式一_第3页
设计模式之结构型模式一_第4页
设计模式之结构型模式一_第5页
资源描述:

《设计模式之结构型模式一》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、软件英才网软件行业驰名招聘网站设计模式之结构型模式一来自何静媛的博客结构型模式:  适配器模式:  将一个类的接口转换成客户希望的另外一个接口.Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作. 主要解决的问题:  简单的说,就是需要的东西就在面前,但却不能使用,而短时间又无法改造它,于是我们就想办法适配它          在软件开发中,也就是系统的数据和行为都正确,但接口不符时,我们应该考虑用适配器,目的是使控制范围之外的一个原有对象与某个接口匹配.适配器模式主要应用于希望复用一些现存的类,但是接口又与复用环境要求不

2、一致的情况. 应用:  两个类所做的事情相同或相似,但是具有不同的接口时要使用它,就应该考虑用适配器模式有需要请联系我们软件英才网软件行业驰名招聘网站 课本实例:在NBA我需要翻译 代码如下:[csharp] viewplaincopyprint?1.//翻译者类  2.         class Translator : Player  3.         {   4.             //声明并实例化一个内部的外籍中锋对象,表明翻译者与外籍球员有关联  5.             private ForeignCenter wj

3、zf = new ForeignCenter();  6.             public Translator(string name)  7.                 : base(name)  8.             {  9.                 wjzf.Name = name;  10.   11.             }  12.             public override void Attack()  13.             {  14.                 wj

4、zf.进攻();  15.             }  16.             public override void Defense()  17.             {  18.                 wjzf .防守 ();  19.             }  20.         }  21. //外籍中锋  22.         class ForeignCenter  23.         {  24.             private string name;  25.           

5、  public string Name   26.             {  27.                 get { return name; }  28.                 set { name = value; }  29.             }  30.             public void 进攻()  31.             {  32.              Console.WriteLine("中锋{0}进攻", name);  33.             }  有需要请

6、联系我们软件英才网软件行业驰名招聘网站1.             public void 防守()  2.             {  3.                 Console.WriteLine("中锋{0}防守", name);  4.             }  5.         }  6.   桥接模式  将抽象部分与它的实现部分分离,使它们都可以独立地变化  实现指的是和它的派生类用来实现自己的对象。就例子而言,就是让“手机”既可以按照品牌来分类又可以按照功能来分类。由于实现的方式多种,桥接模式的核心意图就是把这些

7、实现独立出来,让它们各自地变化。          实现系统可能有多角度分类,每一种分类都有可能变化,那么就把这种多角度分离出来让它们独立变化,减少它们之间的耦合。应用:  有需要请联系我们软件英才网软件行业驰名招聘网站那么什么时候使用桥接模式呢?当系统可以从多个角度分类,每一种分类都有可能变化,那么就把这种多角度分类分离出来让他们独立变化,这样就可以减少他们之间的耦合。 课本实例:手机品牌和手机软件的关系 如图:         代码如下:[csharp] viewplaincopyprint?1.//手机软件  2.abstract clas

8、s HandsetSoft  3.{  4.    public abstract void Run();  5.}  6.//游戏,通

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。