課程
/后端開發(fā)
/Java
/模式的秘密---模板方法模式
為什么采用抽象類實現(xiàn)呢?既然每個步驟都是必須的,為什么不采用一個類作為父類提供默認(rèn)的實現(xiàn)行為,通過子類覆蓋父類方法來實現(xiàn)各自不同的實現(xiàn)行為呢?
2016-05-30
源自:模式的秘密---模板方法模式 2-2
正在回答
對模板方法中非共性的方法采用抽象類中的抽象方法,是因為有些方法在模板中確實不知道具體的實現(xiàn),提供一個空的默認(rèn)實現(xiàn),再在子類中去override是多余的。再者,共性的部分采用private標(biāo)識,對子類屏蔽了實現(xiàn)細(xì)節(jié),讓具體的子類只用關(guān)注它特有的個性方法實現(xiàn)。 這樣整體結(jié)構(gòu)更加清晰明了,各個類的職責(zé)也更加具體清楚。
一蓑煙雨2 提問者
舉報
封裝算法框架的模板方法模式,用案例告訴你模板方法模式的強大
1 回答抽象方法實現(xiàn)的 , 用的時候就是用的子類的么
1 回答模板方法模式的實現(xiàn),必須依靠抽象類嗎?
2 回答用到面向?qū)ο蟮膸讉€知識點 很好??!
1 回答這個模式真的好簡單,僅僅用到了面向?qū)ο蟮睦^承
1 回答鉤子方法問題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-05-30
對模板方法中非共性的方法采用抽象類中的抽象方法,是因為有些方法在模板中確實不知道具體的實現(xiàn),提供一個空的默認(rèn)實現(xiàn),再在子類中去override是多余的。再者,共性的部分采用private標(biāo)識,對子類屏蔽了實現(xiàn)細(xì)節(jié),讓具體的子類只用關(guān)注它特有的個性方法實現(xiàn)。 這樣整體結(jié)構(gòu)更加清晰明了,各個類的職責(zé)也更加具體清楚。