C# 程式設計經典300例 實例095 果園改變種植方式 適配器模式

        實例095介紹適配器模式,範例程式有兩種寫法。 


實例描述


範例以果園改變種植方式為例,目前已經存在一個果園類,提供一個指定城市種植指定類型的水果方法,由於需求發生更改,使用者只需要執行一個種植方法。


為了能有效地利用原有的果園類型,範例用了適配器模式改變種植方向的介面,以滿足新的需求。


輸出「北京果園種植蘋果」、「上海果園種植橘子」。


實現過程


//種植接口


public interface IPlant


{


   void Plant();


}


 


//果園類


public class Orchard


{


   public void Plant(string city, string fruit)


   {


        Console.WriteLine(“{0}果園種植{1}!”, city, fruit);


   }


}


 


//類適配器:北京果園


public class BJOrchard:Orchard, IPlant


{


   public void Plant()


   {


       base.Plant(“北京”,”蘋果”);


   }


}


 


//對象適配器:上海果園


public class SHOrchard: IPlant


{


   Orchard orchard = new Orchard();


   public void Plant()


   {


       orchard.Plant(“上海”,”橘子”);


   }


}


 


main函數代碼如下:


 


IPlant target = new BJOrchard();


target .Plant();


target = new SHOrchard();


target .Plant();


 


代碼解析


 


適配器模式主要將類的介面轉成新的介面形式,以滿足新的需求。適配器模式應用在已有類型進行複用,但介面與需求不一致的場合。


 


 


留言

這個網誌中的熱門文章

異世界NTR web版第三章 觀後感 喧賓奪主 ,反派實力過強

持有縮小技能的D級冒險者,與聖女結婚並加入勇者團隊 漫畫 01-04 觀後感 大我與小我

泛而不精的我被逐出了勇者隊伍 web第三章 觀後感 菲莉真能打; 露娜超爽der