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

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

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

    posts - 297,  comments - 1618,  trackbacks - 0

    ????模板方法(Template Method)模式 屬于對(duì)象的行為模式
    1. 定義
    ??? 定義一個(gè)操作中算法的骨架,將一些步驟執(zhí)行延遲到其子類中。模板方法模式是基于繼承的代碼復(fù)用的基本技術(shù),該模式的結(jié)構(gòu)和用法也是面向?qū)ο笤O(shè)計(jì)的核心。
    2. 使用的原因
    ??? 當(dāng)一個(gè)算法的基本骨架已能確定,但算法的實(shí)現(xiàn)部分會(huì)根據(jù)具體情況有所變動(dòng),或?yàn)榱颂岣咚惴▽?shí)現(xiàn)的靈活性時(shí),可考慮采用模板方法(Template Method)模式。
    3. 適用的情況舉例
    ??? eg. 你計(jì)劃了向所喜歡的女孩子表白,你已經(jīng)想好了當(dāng)晚表白時(shí)要進(jìn)行的具體步驟,例如第一步打電話約該女生出來(lái),第二步與該女生去一家咖啡廳或附近的某公園表白,第三步.......,但還沒(méi)想好具體的某些步該怎么樣做時(shí),你可以先定義一個(gè)抽象的模板,然后請(qǐng)各好友或自己閉關(guān)想出一種或多種來(lái)實(shí)現(xiàn)之;
    4. 類圖結(jié)構(gòu)及說(shuō)明
    ???? 1)類圖結(jié)構(gòu)如下所示:


    ?????? 2)類說(shuō)明
    ??????????? i) AbstractClass:抽象模板類,該類定義了一個(gè)或多個(gè)抽象操作,以便讓子類實(shí)現(xiàn);并且它給出了一個(gè)頂級(jí)邏輯的骨架,而邏輯的組成步驟在相應(yīng)的抽象步驟中,推遲到子類實(shí)現(xiàn)。
    ?????????? ii)ConcreteClass:具體模板類,該類實(shí)現(xiàn)父類AbstractClass所定義的一個(gè)或多個(gè)抽象方法,它們是一個(gè)頂級(jí)邏輯的組成步驟;每一個(gè)抽象模板角色都可以有任意多個(gè)具體模板角色與之對(duì)應(yīng),而每一個(gè)具體模板角色都可以給出這些抽象方法的不同實(shí)現(xiàn)。

    5. 使用舉例
     
    1) 需求:Amigo的老媽大人打算找個(gè)女婿,特意為其未來(lái)女婿定義需闖的五關(guān),第一關(guān):基本條件,年齡要求:25-30;第二關(guān):考驗(yàn)其是否love她的女兒;第三關(guān):檢驗(yàn)其是否老實(shí)不花心;第四關(guān):考察其是否尊老愛(ài)幼;第五關(guān):觀察該人是否勤奮好學(xué)有能力。對(duì)于來(lái)“應(yīng)聘”的人(也許還有不少,貌似美美地說(shuō)),對(duì)這五關(guān)都會(huì)有不同的表現(xiàn)方式;
    ???? 2)分析:Amigo一瞄,嘿,這倒是個(gè)模板方法方式的典型好例哦,選女婿的算法骨架已出來(lái)了,就是這五關(guān)哈,各個(gè)“應(yīng)聘”者提供了第二到五關(guān)的具體實(shí)現(xiàn);
    ???? 3)代碼參考實(shí)現(xiàn):
    ????????? i)抽象考察模板類

    public ? abstract ? class ?考察模板? {
    ????
    public ? void ?選女婿()? {
    ??????????? 第一關(guān)();
    ??????????? 第二關(guān)();
    ??????????? 第三關(guān)();
    ??????????? 第四關(guān)();
    ?????????????? 第五關(guān)();
    ????}

    ?
    ????????????
    ???????? public final void 第一關(guān)() {
    ???????????????//年齡限制:25-30
    ?????????}

    ????
    public ? abstract ? void ?第二關(guān)();
    ??
    ????
    public ? abstract ? void ?第三關(guān)();

    ????
    public ? abstract ? void ?第四關(guān)();
    ??
    ????
    public ? abstract ? void ?第五關(guān)();

    }
    ??????? ii)考察模板具體實(shí)現(xiàn)類,A君過(guò)來(lái)應(yīng)聘,經(jīng)過(guò)一段時(shí)間的考察,Amigo's mother總結(jié)了其實(shí)現(xiàn),具體如下:
    ?????
    public?class?應(yīng)聘人1的實(shí)現(xiàn)?extends?考察模板?{
    ????
    public?void?第二關(guān)()?{
    ??????????
    //跟Amigo's?mother's?daughter出去的時(shí)候老看路邊美女,汗
    ??????? }

    ??
    ????
    public?void?第三關(guān)()?{
    ????????????? ?
    //手機(jī)短信響不停,全是"親愛(ài)的"
    ??????? }


    ????
    public?void?第四關(guān)()?{
    ???????????? ?
    //坐公交車時(shí)不給老人小孩讓位子,現(xiàn)在的小伙子啊
    ?????? }

    ??
    ????
    public?void?第五關(guān)()?{
    ?????????????
    //一有空就在家里玩游戲,上班猛聊QQ
    ?????? ?}

    }
    ??????? 真是出師不利啊,一來(lái)就是個(gè)四不行.....
    ??????? 路漫漫,繼續(xù)等待應(yīng)聘人吧。
    ??????? 在此也祝愿單身的朋友們?cè)缛照业饺缫獾牧硪话耄灰覔屩^(guò)光棍節(jié)!
    posted on 2007-03-20 22:38 阿蜜果 閱讀(2565) 評(píng)論(8)  編輯  收藏 所屬分類: Design Pattern


    FeedBack:
    # re: 設(shè)計(jì)模式學(xué)習(xí)筆記--模板方法(Template Method)模式
    2007-03-20 23:05 | 阿蜜果
    剛修正了個(gè)bug,呵呵  回復(fù)  更多評(píng)論
      
    # re: 設(shè)計(jì)模式學(xué)習(xí)筆記--模板方法(Template Method)模式
    2007-03-20 23:09 | ant
    有才情的女子,^_^。  回復(fù)  更多評(píng)論
      
    # re: 設(shè)計(jì)模式學(xué)習(xí)筆記--模板方法(Template Method)模式
    2007-03-21 08:58 | Tortoise
    講解的很到位,每次的例子也都是那么的經(jīng)典,不頂?shù)娜耍穷^腦有問(wèn)題
    要么就不是這個(gè)行業(yè)的。  回復(fù)  更多評(píng)論
      
    # re: 設(shè)計(jì)模式學(xué)習(xí)筆記--模板方法(Template Method)模式
    2007-03-21 10:25 | 壞男孩
    寫(xiě)的很生動(dòng),證明已經(jīng)理解了其本質(zhì)  回復(fù)  更多評(píng)論
      
    # re: 設(shè)計(jì)模式學(xué)習(xí)筆記--模板方法(Template Method)模式 [未登錄](méi)
    2007-03-21 10:35 | 阿蜜果
    to all
    呵呵,謝謝各位的關(guān)注,繼續(xù)努力中!  回復(fù)  更多評(píng)論
      
    # re: 設(shè)計(jì)模式學(xué)習(xí)筆記--模板方法(Template Method)模式
    2007-03-21 12:28 | cresposhi
    我可不想做頭腦有問(wèn)題的人,so UP ^_^  回復(fù)  更多評(píng)論
      
    # re: 設(shè)計(jì)模式學(xué)習(xí)筆記--模板方法(Template Method)模式
    2007-03-21 16:03 | 鉛筆刀
    不錯(cuò)!不錯(cuò).
    欣賞了.  回復(fù)  更多評(píng)論
      
    # re: 設(shè)計(jì)模式學(xué)習(xí)筆記--模板方法(Template Method)模式
    2008-01-08 12:35 | hbyufan@hotmail.com
    2007-03-20 23:09 | ant

    有才情的女子,^_^。 回復(fù) 更多評(píng)論
      回復(fù)  更多評(píng)論
      
    <2007年3月>
    25262728123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

          生活將我們磨圓,是為了讓我們滾得更遠(yuǎn)——“圓”來(lái)如此。
          我的作品:
          玩轉(zhuǎn)Axure RP  (2015年12月出版)
          

          Power Designer系統(tǒng)分析與建模實(shí)戰(zhàn)  (2015年7月出版)
          
         Struts2+Hibernate3+Spring2   (2010年5月出版)
         

    留言簿(263)

    隨筆分類

    隨筆檔案

    文章分類

    相冊(cè)

    關(guān)注blog

    積分與排名

    • 積分 - 2298114
    • 排名 - 3

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 曰批视频免费40分钟试看天天 | 亚洲国产日韩一区高清在线| 成人性生交大片免费看无遮挡| 在线观看人成视频免费无遮挡 | 午夜免费福利视频| 国产亚洲午夜精品| ass亚洲**毛茸茸pics| 国产A在亚洲线播放| 亚洲精品岛国片在线观看| 24小时免费直播在线观看| 久久久久高潮毛片免费全部播放 | 午夜免费福利在线观看| 亚洲一级毛片免费在线观看| baoyu777永久免费视频| 国产区图片区小说区亚洲区| 最新亚洲精品国偷自产在线| 在线观看亚洲一区二区| 亚洲国产精品无码专区在线观看 | 久久www免费人成精品香蕉| 色九月亚洲综合网| 亚洲AV无码一区二区三区久久精品| 亚洲免费观看网站| 亚洲精品国产情侣av在线| 亚洲成熟xxxxx电影| 亚洲av午夜福利精品一区人妖| 国产亚洲视频在线播放| 亚洲午夜国产片在线观看| 全亚洲最新黄色特级网站 | 五月天网站亚洲小说| 久久久久亚洲AV成人网人人软件| 国产成人免费片在线观看| 亚洲avav天堂av在线网毛片| 亚洲AV成人无码网站| 亚洲AV成人一区二区三区观看| 综合一区自拍亚洲综合图区| 精品久久久久久久久亚洲偷窥女厕 | 亚洲精品无码成人| 亚洲狠狠婷婷综合久久蜜芽| 亚洲国产成人AV在线播放| 亚洲日韩在线中文字幕综合| 国产亚洲精品91|