java設計模式之策略模式

     設計一個Duck父類,其有swim,run方法,全部鴨子都會游泳和run,新添加fly方法,繼承它的子類有的不會飛,若是把fly設計在父類中,讓子類去複寫則代碼在子類中重複,運行時行爲不容易改變,很難知道全部鴨子的行爲,改變會其一發而動全身,顯然不合理。若是將fly設計成一個接口,只有會飛的鴨子才能實現該接口,若是子類數量不少,又犯了代碼沒法複用的毛病,因此考慮用該模式。算法

oo基礎:抽象,封裝,多態,繼承編程

oo原則:封裝變化,多用組合,針對接口編程,不針對實現編程。.net

oo模式:設計

策略模式:定義算法族,分別封裝起來,讓他們能夠互相替換,此模式讓算法的變化獨立於使用算法的客戶。繼承

例子代碼連接:http://download.csdn.net/detail/u010095768/6454685接口

相關文章
相關標籤/搜索