<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    數(shù)據(jù)加載中……
    設(shè)計(jì)模式之Command——電視篇

    大家都知道電視遙控器節(jié)目面板(ProgramPan)是由節(jié)目按鈕組成,通過選擇相應(yīng)的節(jié)目按鈕,就可以切換到相應(yīng)的節(jié)目屏道。

    下來讓我們看看如何實(shí)現(xiàn)通過遙控器按鈕選擇節(jié)目屏道的過程吧。

     

    1、在這里,先定義遙控器按鈕(RemoteControlButton)接口:

    public interface RemoteControlButton {

      public abstract void  selectProgram(); //選擇節(jié)目屏道

    }

    2、再定義遙控器按鈕(RemoteControlButton)接口的實(shí)現(xiàn)類:

    A:卡通節(jié)目按鈕(CartonProgramButton)類:

    public class CartonProgramButton implements RemoteControlButton{

      public void selectProgram() {

        System.out.println("選擇了卡通屏道!");

      }

    }

    B:電視劇節(jié)目按鈕(TvPlanProgramButton)類:

    public class TvPlanProgramButton implements RemoteControlButton {

      public void selectProgram() {

        System.out.println("選擇了電視劇屏道!");

      }

    }

    C:足球節(jié)目按鈕(FootProgramButton)類:

    public class FootProgramButton implements RemoteControlButton {

      public void selectProgram() {

        System.out.println("選擇了足球屏道!");

      }

    }

    3、遙控器節(jié)目面板(ProgramPan)類:用來控制節(jié)目按鈕,顯示節(jié)目

    public class ProgramPan {

      public static List programList() {

        List list = new ArrayList();  //節(jié)目屏道按鈕列表

        list.add(new CartonProgramButton()); //卡通屏道按鈕

        list.add(new TvPlanProgramButton()); //電視劇屏道按鈕

        list.add(new FootProgramButton());   //足球屏道按鈕

        return list;

      }

    }

    4、編寫測試類:

    public class TestCommand {

      public static void main(String[] args) {

        List list = ProgramPan.programList();  //獲得節(jié)目屏道按鈕

        for (Iterator it = list.iterator();it.hasNext();)

          ( (RemoteControlButton) it.next()).selectProgram();  //選擇節(jié)目屏道中對(duì)應(yīng)的節(jié)目

      }

    }

    5、說明:

    ACommand說白了就是通過選擇一個(gè)個(gè)命令,然后執(zhí)行相應(yīng)動(dòng)作。

    BCommand是對(duì)行為進(jìn)行封裝的典型模式,在本例中通過遙控器節(jié)目面板(ProgramPan)這個(gè)封裝類來實(shí)現(xiàn)我們看電視節(jié)目的目的。

    CCommand模式和Facade(外觀)模式似乎比較相似。都是通過封裝類來進(jìn)行訪問的。如何區(qū)分,對(duì)這點(diǎn)我也比較疑惑。

    posted on 2008-02-27 09:21 java flex 結(jié)合 閱讀(706) 評(píng)論(0)  編輯  收藏 所屬分類: pattern


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 久青草视频在线观看免费| 国产精品亚洲а∨天堂2021| 最近国语视频在线观看免费播放| 国产精品成人无码免费| 国产精品国产亚洲区艳妇糸列短篇 | 国产亚洲精品观看91在线| 一级毛片a女人刺激视频免费| 免费少妇a级毛片人成网| 黄色三级三级免费看| 免费中文字幕在线| 国产无遮挡色视频免费观看性色| 亚洲国产精品成人| 亚洲精品黄色视频在线观看免费资源| 亚洲精品亚洲人成在线观看下载| 大片免费观看92在线视频线视频| 亚洲人成无码www久久久| 四虎国产精品免费永久在线| 午夜影视日本亚洲欧洲精品一区| 中文字幕免费在线观看| 亚洲AV综合色区无码二区偷拍| 成人毛片手机版免费看| 色多多www视频在线观看免费| 亚洲啪啪AV无码片| **毛片免费观看久久精品| 亚洲一区二区三区高清在线观看 | 四虎影视精品永久免费网站| 一级黄色免费大片| 亚洲人成影院在线| 免费高清小黄站在线观看 | 一级毛片在线免费播放| 久久噜噜噜久久亚洲va久| 永久免费av无码不卡在线观看| 久久久久久亚洲精品无码| 精品亚洲成α人无码成α在线观看 | 黄a大片av永久免费| caoporn成人免费公开| 亚洲福利视频网址| 亚洲精品视频在线观看你懂的| 在线免费观看亚洲| 黄页网站在线免费观看| 久久亚洲精品无码VA大香大香|