三)工廠模式 抽象工廠模式

2021-09-26 15:56:50 字數 1324 閱讀 9315

1、工廠模式介紹

建立型設計模式,結構簡單的模式,建立物件的介面,讓子類決定例項化哪個類

2、工廠模式使用場景

在任何需要生成複雜物件的地方,都可以使用,用new就可以生成就無需使用

3、工廠模式的組成

分為四大模組,一是抽象工廠,為工廠方法模式的核心,二是具體工廠,實現具體的業務邏輯,三是抽象產品,是工廠模式所建立產品的父類,四是具體產品,為實現抽象產品的某個具體產品的物件

4、工廠模式的實現

(1)需要哪乙個類的物件就傳入哪乙個類的型別

(2)為每乙個產品定義乙個具體的工廠

(3)當工廠只有乙個時,可以採用靜態工廠模式

//抽象工廠的定義

public abstract class audifactory

5、andriod 原始碼中的工廠模式實現

(1)list和set繼承於collection介面,collection介面繼承於iterable介面,即是要實現iterator方法,返回乙個迭代器物件,而返回乙個迭代器即相當於工廠方法

(2)oncreate()方法相當於乙個工廠方法,對於乙個應用程式來說真正的入口在activitythread中,裡面有main方法

(3)比如資料持久化中,可以把資料操作的方式作為乙個產品類,對於每一種持久化方式都定義乙個具體的io處理類

6、工廠模式的缺點

(1)缺點:每次新增新產品要編寫乙個新的產品類,同時引入抽象層,導致結構的複雜化

1、抽象工廠模式介紹

抽象工廠意味著生產出來的東西是不確定的,比如andriod、ios、windowphone中的button和textview,為建立一組相關或者是相互依賴的物件提供乙個介面,而不需要指定它們的具體類

2、抽象工廠模式的使用場景

乙個物件族有相同的約束時,ios和andriod下的簡訊軟體和撥號軟體,都屬於軟體範疇,可以考慮用抽象工廠模式

3、抽象工廠模式簡單實現

建立產品的抽象類,令產品繼承這個抽象類從而實現抽象工廠模式

4、andriod原始碼中的抽象工廠模式

android底層對mediaplayer的建立,andriod底層mediaplaye***ctory分別會產生不同的mediaplayer基類

5、抽象工廠模式的優點

(1)抽象工廠模式的優點:一是分離介面與實現,客戶端使用抽象工廠來建立需要的物件,而客戶端不知道具體的實現是誰,使切換產品類時更加靈活、容易

(2)缺點:類檔案**性增加,不太容易拓展新的產品類,增加乙個產品類需要修改抽象工廠,所有具體工廠類均會被修改

工廠模式三 抽象工廠模式

抽象工廠模式可以用來生產不同產品族的全部產品。對於新增加的產品,無能為力 但是支援增加產品族 抽象工廠模式其實是工廠方法模式的公升級版本,在有多個業務品種和分類時,通過抽象工廠模式產生需要的物件是一種非常好的解決方案。首先建立發動機引擎的介面與不同層次引擎的實現類 public inte ce en...

抽象工廠模式 抽象工廠模式

抽象工廠模式其實是圍繞了乙個超級工廠建立其他的工廠 可參考工廠模式 這個超級工廠又可以想像成是其他工廠的工廠,這種設計模式是一種建立型模式。在抽象工廠模式中,介面是負責建立乙個相關物件的工廠,不需要顯式指出其類。每個生成的工廠都能按照工廠模式提供物件。意圖提供乙個建立一系列相關或相互依賴物件的介面,...

模式三 抽象工廠模式

抽象工廠是指乙個等級結構可以建立出分屬於不同產品等級結構的乙個產品族中的所有物件。抽象工廠角色 擔任這個角色的是工廠方法模式的核心,它是與應用系統商業邏輯無關的。具體工廠角色 這個角色直接在客戶端的呼叫下建立產品的例項。抽象產品角色 擔任這個角色的類是工廠方法模式所建立的物件的父類,或它們共同擁有的...