工廠方法模式的定義:
定義一個(gè)用于創(chuàng)建對(duì)象的接口,讓子類決定將那一個(gè)類實(shí)例化,工廠方法模式讓一個(gè)類的實(shí)例化延遲到子類。工廠方法模式又簡稱為工廠模式,又可稱作虛擬構(gòu)造器模式或者多態(tài)工廠模式,
工廠方法模式機(jī)構(gòu)圖:
image.png
工廠方法模式的主要優(yōu)缺點(diǎn):
優(yōu)點(diǎn):
1.在工廠模式中,創(chuàng)建客戶需要的產(chǎn)品,隱藏了創(chuàng)建細(xì)節(jié)。
2.基于工廠角色和產(chǎn)品角色的多態(tài)性設(shè)計(jì)工廠模式,利于擴(kuò)展。
缺點(diǎn):
1.新增產(chǎn)品時(shí),增加的系統(tǒng)復(fù)雜度。
工廠方法模式使用場景:
1.客戶端不需要知道所需要的類。只需要知道工廠即可。
2.通過子類來創(chuàng)建需要的那個(gè)對(duì)象。抽象工廠類只需要提供一個(gè)創(chuàng)建產(chǎn)品的接口,由子類決定創(chuàng)建的對(duì)象,利用多態(tài)性和里氏代換原則,子類替換父類,利用擴(kuò)展。
配置文件與反射:
為了讓系統(tǒng)具有更好的靈活性和擴(kuò)展性.不適用new關(guān)鍵字段,創(chuàng)建工廠對(duì)象。
