(四)工廠方法模式

  1. 工廠方法模式概述 

工廠方法模式中抽象工廠類負責定義創建對象的接口,具體對象的創建工作由繼承抽象工廠的具體類實現。 

  1. 優點 

客戶端不需要在負責對象的創建,從而明確了各個類的職責,如果有新的對象增加,只需要增加一個具體的類和具體的工廠類即可,不影響已有的代碼,後期維護容易,增強了系統的擴展性 

  1. 缺點 

需要額外的編寫代碼,增加了工作量 

動物抽象類:public abstract Animal { public abstract void eat(); }

工廠接口:public interface Factory {public abstract Animal createAnimal();}

開始,在測試類中每個具體的內容自己創建對象,但是,創建對象的工作如果比較麻煩,就需要有人專門做這個事情,所以就知道了一個專門的類來創建對象。發現每次修改代碼太麻煩,用工廠方法改進,針對每一個具體的實現提供一個具體工廠。 

具體狗類:public class Dog extends Animal {}//具體類

具體貓類:public class Cat extends Animal {}

狗工廠:public class DogFactory implements Factory {//具體工廠

public Animal createAnimal() {return new Dog()}

        }

貓工廠:public class CatFactory implements Factory {

public Animal createAnimal() {reutun new Cat()}

        }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章