設計模式(一)簡單工廠設計模式

此設計模式爲創造型 設計模式
主要涉及到 要創建的對象 都具有相同的特性 。
優點:
1、一個調用者想創建一個對象,只要知道其名稱就可以了。 2、擴展性高,如果想增加一個產品,只要擴展一個工廠類就可以。 3、屏蔽產品的具體實現,調用者只關心產品的接口。

應用實例:
1、您需要一輛汽車,可以直接從工廠裏面提貨,而不用去管這輛汽車是怎麼做出來的,以及這個汽車裏面的具體實現。 2、Hibernate 換數據庫只需換方言和驅動就可以。

代碼實現:

Car.class 產品的接口類

package com.simpleFactory;

public interface Car {

    void drive();
}

奧迪的實例類

package com.simpleFactory;

public class Aodi implements Car{


    @Override
    public void drive() {
        System.out.println("奧迪開車");
    }
}

寶馬的實例類

package com.simpleFactory;

public class BaoMa implements Car {

    @Override
    public void drive() {
        System.out.println("寶馬開車");
    }
}

奔馳的實例類

package com.simpleFactory;

public class BenChi implements Car{
    @Override
    public void drive() {
        System.out.println("奔馳開車");
    }
}

汽車的實例工廠類

package com.simpleFactory;

public class CarFactory {


    public static Car getInstance(String instanceName){
        if("baoma".equals(instanceName)){
            return new BaoMa();
        }else if("aodi".equals(instanceName)){
            return new Aodi();
        }else if ("benchi".equals(instanceName)){
            return new BenChi();
        }
        return null;
    }


}

測試類

package com.simpleFactory;

public class Test {

    public static void main(String[] args) {
        Car car = CarFactory.getInstance("benchi");
        car.drive();

    }
}

這種設計模式 很簡單 我將它實際運用到了項目中 用來製作圖表

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