設計模式之「適配器模式」

共有兩類適配器模式:
對象適配器模式
-- 在這種適配器模式中,適配器容納一個它包裹的類的實例。在這種狀況下,適配器調用被包裹對象的物理實體。
類適配器模式
-- 這種適配器模式下,適配器繼承自已實現的類(通常多重繼承)。
將一個類的接口轉換成客戶但願的另一個接口。 Adapter模式使得本來因爲接口不 兼容而不能一塊兒工做的那些類能夠一塊兒工做。—— Gang of Four
客戶:須要調用咱們的代碼的對象。
Adapter模式的宗旨:保留現有類所提供的服務,向客戶提供接口,以知足客戶的指望。
(1)類適配器:
當客戶在接口中定義了他指望的行爲時,咱們就能夠應用適配器模式,提供一個實現該接口的類,而且擴展已有的類,經過建立子類來實現適配。
下面是類適配器的UML圖:
(2)對象適配器:
對象適配器」經過組合除了知足「用戶期待接口」還下降了代碼間的不良耦合。在工做中推薦使用「對象適配」。下面是對象適配器的UML圖:

 實例:spa

 public interface IUserInfo
    {
        string getUserName { get; }
    }
    public class Adapter : IUserInfo
    {
        Adaptee adt = new Adaptee();
        public string getUserName
        {
            get
            {
                return adt.getName();
            }
        }
    }
    public class Adaptee
    {
        public string getName()
        {
            return "new name";
        }

    }
相關文章
相關標籤/搜索