<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无码国产网站| 91网站免费观看| 亚洲人成人无码网www国产| 亚洲人成人无码.www石榴| 黄色成人网站免费无码av| 精品亚洲成在人线AV无码| 妻子5免费完整高清电视| 亚洲制服丝袜一区二区三区| 日韩视频在线精品视频免费观看| 亚洲第一香蕉视频| 永久免费av无码网站韩国毛片| 亚洲欧美成人综合久久久| 国产美女a做受大片免费| 四虎一区二区成人免费影院网址 | 国产人成网在线播放VA免费| 亚洲精品tv久久久久| 国产线视频精品免费观看视频| 亚洲国产另类久久久精品小说| 日韩免费无码一区二区三区 | 亚洲天堂男人影院| 国产美女无遮挡免费视频网站| 精品一区二区三区无码免费直播 | AV无码免费永久在线观看| 中文字幕亚洲精品无码| 免费一级做a爰片久久毛片潮喷| 在线播放国产不卡免费视频| 久久亚洲精品成人综合| 99在线精品免费视频九九视| 亚洲AV女人18毛片水真多| 国产午夜亚洲精品午夜鲁丝片| 中文字幕免费在线观看| 精品久久久久久亚洲综合网| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 亚洲精选在线观看| 女人张开腿等男人桶免费视频| 看亚洲a级一级毛片| 久久久久久a亚洲欧洲AV| 成年女人毛片免费播放人| 四虎一区二区成人免费影院网址| 中文字幕亚洲综合久久| 国产一级淫片视频免费看|