完善工厂方法