簡單工廠模式(Simple Factory)屬於『創建型模式』,又稱為靜態工廠模式(Static Factory)。 簡單工廠其實不是設計模式,比較像是一種編程習慣。
通過專門定義一個類來負責創建其他類的實例,被創建的實例通常都具有共同的父類。
public abstract class Shape {
public abstract void draw();
}
public class Circle extends Shape{
@Override
public void draw() {
System.out.println("圓形工廠:圓形");
}
}
public class Square extends Shape{
@Override
public void draw() {
System.out.println("方形工廠:正方形");
}
}
public class SimpleFactory {
public static Shape createProduct(String product) {
if(product.equals("circle")){
return new Circle();
}else if(product.equals("square")){
return new Square();
}else {
System.out.println("無此產品");
return null;
}
}
}
public class Main {
public static void main(String args[]) {
SimpleFactory.createProduct("circle").draw();
SimpleFactory.createProduct("square").draw();
}
}
圓形工廠:圓形
方形工廠:正方形