最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

設(shè)計(jì)模式:工廠方法模式

2021-03-25 13:36 作者:做架構(gòu)師不做框架師  | 我要投稿

什么是工廠方法模式?

工廠方法模式(英語:Factory Method Pattern)的實(shí)質(zhì)是“定義一個創(chuàng)建對象的接口,但讓實(shí)現(xiàn)這個接口的類來決定實(shí)例化哪個類。工廠方法讓類的實(shí)例化推遲到子類中進(jìn)行”。

一句話歸納

只對結(jié)果負(fù)責(zé),封裝過程對象。



代碼示例

我在Car類中定義了車的一些基本屬性和行為,在其子類BMW類和Benz類里寫各自的屬性和行為的區(qū)別;定義了一個關(guān)于Car類的工廠接口,在其實(shí)現(xiàn)類里的方法返回不同的車型,以后我再賣一個新車系列時候,只需要創(chuàng)建一個Car的子類和相對應(yīng)的工廠類即可。

適用性

以下場景我建議你考慮使用:

  • 面向接口編程;

  • 創(chuàng)建對象需要大量重復(fù)的代碼或默認(rèn)值;

  • 創(chuàng)建對象的生命周期必須集中管理,比如Spring的BeanFactory;

  • 創(chuàng)建對象可能是在一個池子里,不是每次都創(chuàng)建新的,比如線程池、連接池;

  • 客戶端(應(yīng)用層)不依賴于產(chǎn)品類實(shí)例如何被創(chuàng)建、實(shí)現(xiàn)等細(xì)節(jié);

  • 一個類通過其子類來指定創(chuàng)建哪個對象。

局限性

以下場景我建議你謹(jǐn)慎使用:

  • 重構(gòu)現(xiàn)有的類時會破壞現(xiàn)有的代碼,畢竟以前是用構(gòu)造器,現(xiàn)在用工廠方法;

  • 簡單對象創(chuàng)建不建議使用,避免把簡單問題復(fù)雜化;

  • 工廠方法所實(shí)例化的類具有私有的構(gòu)造方法,所以這些類就不能擴(kuò)展了;

  • 確實(shí)擴(kuò)展了工廠方法所實(shí)例化的類,子類必須具有所有工廠方法的一套實(shí)現(xiàn)。

寫在最后

最后,好兄弟,記得點(diǎn)贊,關(guān)注,謝謝。


設(shè)計(jì)模式:工廠方法模式的評論 (共 條)

分享到微博請遵守國家法律
古浪县| 专栏| 横峰县| 松滋市| 板桥市| 连城县| 长葛市| 临朐县| 汉中市| 闽清县| 通辽市| 蕲春县| 九江县| 东辽县| 辽阳市| 丰县| 海淀区| 江达县| 昆明市| 新兴县| 江津市| 平度市| 稷山县| 油尖旺区| 大渡口区| 永平县| 招远市| 乐山市| 宜阳县| 兴业县| 巫溪县| 皮山县| 察哈| 天峨县| 陆丰市| 长沙县| 比如县| 社旗县| 巴塘县| 新安县| 九寨沟县|