什么时候使用工厂模式而不是重载的构造函数来实例化对象更有意义?

Jar*_*rak 8 constructor design-patterns factory overloading instantiation

在Karl Seguin的编程基础中,有一小部分关于使用工厂模式.他通过声明"你可以使用构造函数重载完成相同的功能"来关闭段落,但是没有说明何时或为什么?

那么,何时使用工厂模式而不是重载的构造函数来实例化对象更有意义呢?

Jam*_*ack 4

如果您想要更松散的耦合,那么工厂更有意义,因为您可以调用汽车工厂,传入 suv 枚举,然后返回正确的类。您的应用程序并不关心实际返回的是哪个类,只要它满足您的需求即可。