摘要: bstract factory:為創建相互關聯(風格類似)的一系列的對象提供了一個通用接口,而不需要指定具體的類(產品)名。
factory method:定義一個用來創建對象的接口,并讓子類來決定實例化哪一個具體的類(產品),從而讓具體類的實例化延遲到子類。
他們的主要區別在于,abstract factory強調的是把諾干個產品按照風格進行分類, 為相同風格的一系列對象(產品)提供一個工廠類,因此,只要改變工廠類的實例,就能到達改變這一組產品的風格和外觀。而這一風格的產品的生產可以利用工廠方法來實現. 這其中, factory method強調的則是先在父類實現創建對象的行為,具體的行為或者具體對象(產品)的實例化則延遲到子類實現。
閱讀全文