抽象工厂加上反射