* 创建对象实例时,不要直接 new 类, 而是把这个new 类的动作放在一个工厂的方法中,并返回。 * 在工厂方法的基础上,进一步抽象工厂类,将工厂抽象成两层,AbsFactory(抽象工厂) 和具体实现工厂子类。 * 调用者根据创建对象类型使用对应的工厂子类。 * 这样将单个的简单工厂类变成了工厂簇, 利于代码的维护和扩展 *
* 使用场景:工厂存在扩展的可能,且扩展后工厂的生产方式存在差异