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

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

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

    ivaneeo's blog

    自由的力量,自由的生活。

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
    終于。。。。。我們來到繼承(inheritance)
    我們有數種影片類型,它們以不同的方式回答相同的問題。這聽起來很像subclasses的工作。我們可以建立Movie的三個subclasses,每個都有自己的計費法。

    這么一來我就可以運用多態(polymorphism)來取代switch語句了。很遺憾的是這里有個小問題,不能這么干。一部影片可以在生命期周期內修 改自己的分類,一個對象卻不能在生命周期內修改自己的分類,一個對象卻不能在生命周期內修改自己所屬的class。不過還是有一個解決方法:state pattern(模式)。加入這一層間接性,我們就可以在Price對象內進行subclassing動作,于是便可在任何必要時刻修改價格。

    為了引入state模式,我使用三個重構準則。首先運用Replace Type Code with State/Strategy(227),將[與型相依的行為](type code behavior)搬移至state模式內。然后運用Move Method(142)將switch語句移到Price class里頭。最后運用Replace Conditional with Polymorphism(255)去掉switch語句。
    posted on 2005-08-15 16:16 ivaneeo 閱讀(172) 評論(0)  編輯  收藏 所屬分類: refactoring-從地獄中重生
    主站蜘蛛池模板: 亚洲人成网站免费播放| 亚洲AV无码一区二区三区在线| 美国毛片亚洲社区在线观看 | 日本片免费观看一区二区| 亚洲αv在线精品糸列| 中文字幕在线观看免费| 中文字幕亚洲激情| 国产日韩久久免费影院| 免费看小12萝裸体视频国产| 精品亚洲成A人在线观看青青| 热99re久久免费视精品频软件| 亚洲色大成网站www永久男同| 成人性生交大片免费看午夜a| 亚洲日韩亚洲另类激情文学| 免费看片A级毛片免费看| 亚洲精品色播一区二区| 国产精品免费视频一区| 特级毛片aaaa级毛片免费| 中文字幕亚洲激情| 日本人成在线视频免费播放| 亚洲综合一区二区精品导航| 国产精品视频免费| 亚洲av中文无码乱人伦在线观看 | 8888四色奇米在线观看免费看| 亚洲黄色在线网站| 在线a级毛片免费视频| 亚洲精品乱码久久久久久蜜桃图片| 精品剧情v国产在免费线观看 | 国产无遮挡无码视频免费软件| 久久久久亚洲AV成人无码网站| **aaaaa毛片免费| 亚洲狠狠色丁香婷婷综合| 亚洲毛片av日韩av无码| 久久久久久AV无码免费网站| 亚洲一级免费毛片| 亚洲国产精品毛片av不卡在线| 日本视频在线观看永久免费| 亚洲一本到无码av中文字幕| 狠狠亚洲婷婷综合色香五月排名| 久久精品无码专区免费东京热 | 亚洲天堂一区二区三区四区|