<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-從地獄中重生
    主站蜘蛛池模板: 国产特黄一级一片免费| 久久亚洲精品无码网站| 久久免费区一区二区三波多野| 高清在线亚洲精品国产二区| 国产成人精品日本亚洲语音 | 亚洲人成电影网站| 暖暖日本免费中文字幕| 久久久久久亚洲精品中文字幕| 黄色视频在线免费观看| 亚洲国产成人一区二区精品区| 国产免费阿v精品视频网址| 久久久久久亚洲av成人无码国产| 999任你躁在线精品免费不卡| 亚洲色大成网站www永久| 久久综合九色综合97免费下载| 亚洲AV无码专区国产乱码电影| 最近中文字幕大全免费版在线 | 国产亚洲婷婷香蕉久久精品| 久久免费国产视频| 亚洲Av无码一区二区二三区| 女人与禽交视频免费看| 男女猛烈xx00免费视频试看| 中文字幕亚洲日本岛国片| 三级黄色在线免费观看| 亚洲国产成人久久精品影视| 无码国产精品一区二区免费vr | 亚洲精品岛国片在线观看| 黄色a三级三级三级免费看| 亚洲成年人啊啊aa在线观看| 国产午夜精品久久久久免费视 | 亚洲精品视频观看| 午夜神器成在线人成在线人免费 | 日本视频免费高清一本18| 99久久精品国产亚洲| 在线免费观看中文字幕| 成年大片免费高清在线看黄| 亚洲国产精品VA在线观看麻豆| 成人a视频片在线观看免费| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 日韩亚洲一区二区三区| 久久不见久久见中文字幕免费 |