工厂模式分为三种类型:简单工厂、工厂方法和抽象工厂。
1. 简单工厂(Simple Factory)
public class ComputerFactory {
public static Computer createComputer(String type){
Computer mComputer=null;
switch (type) {
case "lenovo":
mComputer=new LenovoComputer();
break;
case "hp":
mComputer=new HpComputer();
break;
case "asus":
mComputer=new AsusComputer();
break;
}
return mComputer;
}
}
2. 工厂方法模式(Factory Method)
-
定义
- 定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。
工厂方法模式,一个工厂只创建一个对象。
3. 抽象工厂模式(Abstract Factory)
-
定义
- 为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。
抽象工厂模式是创建一个工厂,该工厂可生成一组相关的类,不是一个类。