適配器模式的定義
適配器模式:將一個類別的介面轉換成客戶希望的另一個介面。適配器模式讓那些介面不相容的類別可以一起工作
Adapter Pattern:Convert the interface of a class into another interface clients expect.Adapter lets classes work together that couldn't otherwise because of incompatible interface.
適配器模式的別名為包裝器(Wrapper)模式,它既可以作為類別結構型模式,也可以作為物件結構型模式。在適配器模式定義中所提及的接口是指廣義的接口,它可以表示一個方法或方法的集合。
public class Adaptee {public void adapteeMethod(){ System.out.println("适配方法"); } }
public interface Target {/** * 适配的接口 */void adapteeMethod();/** * 新增接口 */void adapterMethod(); }
public class Adapter implements Target{private Adaptee adaptee;public Adapter(Adaptee adaptee) {this.adaptee = adaptee; } @Overridepublic void adapteeMethod() {this.adaptee.adapteeMethod(); } @Overridepublic void adapterMethod() { System.out.println("新增接口"); } }
public static void main(String[] args) { Target target = new Adapter(new Adaptee()); target.adapteeMethod(); target.adapterMethod(); }
配器模式包含三個角色:
1:Target(目標抽象類別):目標抽象類別定義客戶所需的接口,可以是一個抽象類別或接口,也可以是具體類別。在類別適配器中,由於C#語言不支援多重繼承,所以它只能是介面。
2:Adapter(適配器類別):它可以呼叫另一個接口,作為一個轉換器,對Adaptee和Target進行適配。它是適配器模式的核心。
3:Adaptee(適配者類別):適配者即被適配的角色,它定義了一個已經存在的接口,這個接口需要適配,適配者類包好了客戶希望的業務方法。
以上是適配器模式的定義與使用介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!