Java設計模式之抽象工廠模式淺析講解
1.介紹
當系統準備為用戶提供一系列相關對象,又不想讓用戶代碼和這些對象形成耦合時,就可以使用抽象工廠模式。
2.如何實現
1)抽象產品–Car
2)具體產品–BYDCar、TSLCar
3)抽象工廠Factory
4)具體工廠–BYDFactory、TSLFactory
3.代碼實現
/** * 抽象產品 */ public abstract class Car { public abstract String getName(); }
/** * 具體產品 */ public class BYDCar extends Car { String name; public BYDCar(String name){ this.name = name; } @Override public String getName() { return name; } }
/** * 抽象工廠 */ public abstract class CarFactoty { public abstract Car createCar(String name); }
/** * 具體工廠 */ public class BYDFactory extends CarFactoty { @Override public BYDCar createCar(String name) { return new BYDCar(name); } }
4.總結
1)抽象工廠模式可以為用戶創建一系列相關的對象,是用戶和這些類的對象解耦
2)使用抽象工廠模式可以方便的為用戶配置一些列對象。
3)在抽象工廠模式中,可以隨時增加“具體工廠”為用戶提供一組相關的對象。
如:是上面的例子中,如果用戶需要一特斯拉車,創建一個特斯拉對象和特斯拉工廠就能完成。
/** * 具體產品 */ public class TSLCar extends Car { String name; public TSLCar(String name){ this.name = name; } @Override public String getName() { return name; } }
/** * 具體工廠 */ public class TSLFactory extends CarFactoty { @Override public TSLCar createCar(String name) { return new TSLCar(name); } }
到此這篇關於Java設計模式之抽象工廠模式淺析講解的文章就介紹到這瞭,更多相關Java抽象工廠模式內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Java面向對象之抽象類,接口的那些事
- 一篇文章帶你深入瞭解Java對象與Java類
- Java設計模式之簡單工廠 工廠方法 抽象工廠深度總結
- Java設計模式之組合模式的示例詳解
- 詳解Java抽象類與普通類的區別