Simple Factory(简单工厂)
Simple Factory(简单工厂)
前言:
最近在备考记录下设计模式,
1.简单工厂 -->> 2.工厂方法 -->> 3.抽象工厂 -->> 4.生成器 -->> 5.原生 —>> 6.单例
- 简单工厂模式属创建型模式,但不属于23种设计模式之一。
- 定义:定义一个工厂类,他可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类。在简单工厂模式中用于被创建实例的方法通常为静态(static)方法,因此简单工厂模式又被成为静态工厂方法
- 简单工厂模式违反了开放封闭原则,即对扩展开放对修改也开放。
public class SimpleFactory {public static void main(String[] args) {Product product = Factory.createProduct("A");product.info();}
}class Factory {public static Product createProduct(String type) {Product product = null;switch (type){case "A":product = new ProductA();break;case "B":product = new ProductB();break;}return product;}
}abstract class Product {public abstract void info();
}class ProductA extends Product {public void info() {System.out.println("A产品");}
}class ProductB extends Product {public void info() {System.out.println("B产品");}
}