程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C語言和設計模式之適配器模式

C語言和設計模式之適配器模式

編輯:關於C語言

定義:     將一個類的接口轉換成客戶希望的另外一個接口。適配器模式使得原來由於接口不兼容而不能一起工作的類可以一起工作。 類型:     結構型模式 分類:類適配器模式和對象適配器模式        類適配器模式通過多重繼承對接口進行匹配,而C#、VB.NET、JAVA等語言不支持多重繼承,一個類只允許有一個父類。所以我們主要介紹的是對象適配器模式。 類圖:                   代碼:   [csharp]  //Target類       class Target       {           public virtual void Request()           {               Console.WriteLine("普通請求!");           }       }    [csharp]   //Adaptee類   class Adaptee   {       public void SpecificRequest()       {           Console.WriteLine("特殊請求!");       }   }   [csharp]   //Adapter類   class Adapter : Target   {       private Adaptee adaptee = new Adaptee(); //建立一個私有的Adaptee對象       public override void Request()       {           adaptee.SpecificRequest();       }   }   [csharp]   //客戶端代碼               Target target = new Adapter(); //實例化對象               target.Request();               Console.Read();     優點和適用范圍:         兩個類所做的事情相同或相似,希望復用這些現存的類,但是具有不同的接口與復用環境要求不一致,並且雙方都不太容易修改的時候,此時應該考慮使用適配器模式。        適配器模式可以使客戶代碼統一調用同一接口,更加簡單、直接和緊湊。 注意事項:          適配器模式是在軟件開發後期或維護期再考慮使用的模式。          1、在軟件設計階段,事先預防接口不同的問題,就不會發生不匹配問題;          2、如果有接口不統一問題發生時,首先應該考慮及時重構統一接口;          3、只有碰到無法改變原有設計和代碼的情況時,才考慮適配。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved