構建者模式,單例模式經常用,但工廠模式理解模模糊糊的,在專案中碰到了,就順便寫個demo熟悉練習下,熟悉掌握。
例子是乙個加減乘除的方式。
先看簡單工廠模式:
public inte***ce ioperation
先定義乙個操作的介面。下面四個不同實現。
public class addoperationimpl implements ioperation
@override
public void printinput()
}
public class subtractoperationimpl implements ioperation
@override
public void printinput()
}
public class multipleoperationimpl implements ioperation
@override
public void printinput()
}
public class divideoperationimpl implements ioperation
@override
public void printinput()
}
public class ******factory
public static ioperation createoperation(openum type)
return operation;}}
最後乙個是簡單工廠模式,通過列舉進行測試。
抽象工廠模式相當於在簡單工廠模式上進一步解耦:
先定義乙個工廠介面,然後對應不同的實現。
public inte***ce ioperationfactory
public class addfactory implements ioperationfactory
}
public class substractfactory implements ioperationfactory
}
最後看下測試類以及測試結果:
策略模式與工廠模式的結合使用
定義了一組演算法 業務規則 封裝了每個演算法 這族的演算法可互換代替 interchangeable 抽象策略角色 策略類,通常由乙個介面或者抽象類實現。環境角色 持有乙個策略類的引用,最終給客戶端呼叫。為了方便比對傳入的場景值,選擇對應的策略處理類,定義乙個執行時註解 就是真正處理執行巡檢點位的實...
工廠模式與抽象工廠模式
原始出處 作者資訊和本宣告。否則將追究法律責任。工廠模式與抽象工廠模式,相信同行不會陌生 在網上及相關書裡面也看過這方面的介紹 推薦這兩本書 steven john metsker s design patterns in c 和 gof s design pattern framework2.0 ...
工廠模式與抽象工廠模式
1 工廠模式 定義了一組建立物件的介面,但是由子類決定要例項化的類是哪乙個。工廠方法把類的例項化推遲到子類中。現在考慮有pizzastore有一些子類 加盟店 他們有可能對pizza的做法進行一些改良,即createpizza方法需要公升級。工廠方法的做法是,在基類中建立乙個形為abstract p...