設計模式:介面卡模式
阿新 • • 發佈:2018-12-19
舉例:
在國外買了一個筆記本mac pro 但是充電器是110V的,在國內都是220V的,如何解決?
此時就想買個介面卡將220V轉110V,
但是不需要寫裡面的怎麼將220 轉110的,這都有現成的方法
接下來是見證奇蹟的時刻。。。。
介面卡模式:
分為類的介面卡 與方法的介面卡;
類的介面卡是需要繼承+實現的,方法介面卡只需要將類變數傳入到adapter 類中即可,就能實現類的轉換
public interface Target { //將220V轉110v public void converTo_110V(); } //-------------- public class PowerPort220 { // 源插頭只能輸出220V, public void output220(){ System.out.println("輸出220v"); } } //-------- public class Adatpert220 extends PowerPort220 implements Target { //繼承+實現 這個是介面卡模式的關鍵所在, @Override public void converTo_110V() { // 這裡只需源輸入的變數,然後進行業務轉換,給我220V,我用coverto110V進行相關操作 this.output220(); } } //----- public class TestMain { public static void main(String[] args) { Target adapter220 = new Adatpert220(); adapter220.converTo_110V();// 這裡成功轉換 } }
一個完美的例項,好好理解!
收工!