設計模式:介面卡模式(Adaptor Pattern)
阿新 • • 發佈:2019-01-12
/** * 介面卡模式將一個類的介面轉換成另一個類的介面,讓原本不相容的類之間可以合作。 * 注意:裝飾者模式用於給物件新增邏輯以改變原物件的功能,而介面卡模式用於轉換介面, * 以使原物件可以和新介面合作。 * @author Bright Lee */ public class AdaptorPattern { public static void main(String[] args) { // 被適配者: Adaptee adaptee = new Adaptee(); // 介面卡: Adaptor adaptor = new Adaptor(adaptee); // 要被適配的介面,程式是用這個介面進行工作的: Target target = adaptor; target.request(); } } interface Target { public void request(); } /** * 被適配者 */ class Adaptee { public void specificRequest() { System.out.println("我是被適配者。"); } } /** * 介面卡 */ class Adaptor implements Target { private Adaptee adaptee; public Adaptor(Adaptee adaptee) { this.adaptee = adaptee; } public void request() { System.out.println("我是介面卡。"); adaptee.specificRequest(); } }
執行結果:
我是介面卡。
我是被適配者。