1、工厂类负责创建的对象比较少: 由于创建的对象较少,不会造成工厂方法中的业务逻辑太过复杂。 2、客户端只知道传入工厂类的参数,对于如何创建对象不关心: 客户端既不需要关心创建细节,甚至连类名都不需要记住,只需要知道类型所对应的参数。