1. 程式人生 > 其它 >【設計模式】工廠模式

【設計模式】工廠模式

解釋

  平時我們建立物件的時候都是直接new對應的物件,但是為了安全,可以新加一層介面,裡面定義一個建立物件的方法,但是沒有具體邏輯,而具體的建立的邏輯,可以通過新建類實現介面,重寫建立方法的方式來實現。

定義

  定義一個建立物件的介面,讓其子類自己決定例項化哪一個工廠類,工廠模式使其建立過程延遲到子類進行。同時在建立物件時對客戶端隱藏了建立邏輯。這就是工廠模式。

核心

  建立過程在子類實現

優點

  1.擴充套件性好,想要增加一個產品,直接擴充套件一個工廠類就可以了。

  2.安全性好,對客戶端隱藏了具體的建立的實現。

  3.操作簡單,呼叫者想要建立物件,只要知道其名字就可以了。

缺點

  每次增加一個產品都需要新增一個類,如果產品特別多,會導致程式碼中的類特別多,不易於維護。

使用場景

  1.根據傳參不同去訪問不同的資料庫。

  2.連線伺服器協議的方式HTTP、IMAP、POP3

  3.MQ生產者傳送訊息,不同的生產者其實發送的動作是一樣的。

具體使用描述

  1.建立一個工廠介面,裡面定義建立物件的方法。

  2.再分別建立兩個工廠類,均實現這個工廠介面,並按照各自的邏輯重寫建立物件的方法。

程式碼實現

public interface BallFactory {
    public Ball create();
}

public class SoccerFactory implements
BallFactory { @Override public Ball create() { //do something return null; } } public class BasketBallFactory implements BallFactory { @Override public Ball create() { //do something return null; } }

其他應用

持續更新!!!