簡單工廠模式是一個工廠類根據傳入的參數的不同,來決定創建出哪一種產品類的實例。
簡單工廠模式包含工廠類角色、抽象產品角色和具體產品角色。
- 工廠類角色(Creator):含有與應用相關的商業邏輯,工廠類在客戶端的直接調用下創建產品對象,它往往是由一個具體的Java類實現。
- 抽象產品角色(Product):它可以用一個Java接口或者Java抽象類實現。
- 具體產品角色(Concrete Product):具體產品角色由一個具體Java類實現。
工廠類:創建一個新的具體產品的實例並返回給調用者。
public class Creator{
/**
* 靜態工廠方法
*/
public static Product factory(){
return new ConcreteProduct();
}
}
抽象產品類:給所有的具體產品類提供一個公共的類型。
public interface Product{
}
具體產品類:實際情況下創建的一個實例。
public class ConcreteProduct implements Product{
public ConcreteProduct(){
}
}