定义一个用于创建对象的接口,让子类决定将那一个类实例化; 工厂方法让类的实例化延迟到子类。

Product: 抽象产品类
ConcreteProduct:
Factory:抽象工厂,声明工厂方法 Factory Method,用户返回一个产品;抽象工厂是工厂方法模式的核心
ConcreteFactory:实现抽象工厂中定义的工厂方法,并由客户端调用,返回一个具体产品类实例
interface Factory{
public Product factoryMethod();
}
class ConcreteFactory implements Factory{
public Product factoryMethdo()
{
return new ConcreteProduct();
}
}
客户端代码样例:
....
Factory factory;
factory = new ConcreteFactory();
--- 可通过配置文件实现(配置文件存储实例具体工厂类类名)
Product product;
product = factory.factoryMethod();
...
日志记录器
1、类图
原文:https://www.cnblogs.com/clarino/p/9721591.html