工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。
在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。
创建一个汽车产品类
public class Car {
public Car() {
System.out.println("生产一辆汽车");
}
}
创建一个食物产品类
public class Food {
public Food() {
System.out.println("生产食物");
}
}
创建一个电脑产品类
public class Computer {
public Computer() {
System.out.println("生产一台电脑");
}
}
创建工厂类进行产品生产
/**
* 简单工厂模式
* @author XXJ
*
* 2019年3月1日 下午3:34:06
*/
public class SimpleFactory {
public SimpleFactory() {
}
public Object createProduct(String type){
Object obj = null;
switch (type) {
case "car":
obj = new Car();
break;
case "food":
obj = new Food();
break;
case "computer":
obj = new Computer();
break;
default:
throw new RuntimeException("该工厂无法生产该成品");
}
return obj;
}
}
编写测试类
public class Test {
public static void main(String[] args) {
//生产一辆车
new SimpleFactory().createProduct("car");
//生产一台电脑
new SimpleFactory().createProduct("computer");
//生产食物
new SimpleFactory().createProduct("food");
}
}