在卡尔·塞金(Karl Seguin)的Foundations of Programming中,有一小节关于使用工厂模式。他通过声明“您可以通过构造函数重载完成相同的功能”来结束全文,但没有指出何时或为什么?
那么,什么时候使用工厂模式而不是重载的构造函数来实例化对象更有意义?
最佳答案
如果您想要更宽松的联轴器,那么工厂就更有意义了,因为您可以致电汽车制造厂,传入suv枚举,然后返回正确的类。您的应用程序不关心实际返回了哪个类,只要它满足您的需求即可。
在卡尔·塞金(Karl Seguin)的Foundations of Programming中,有一小节关于使用工厂模式。他通过声明“您可以通过构造函数重载完成相同的功能”来结束全文,但没有指出何时或为什么?
那么,什么时候使用工厂模式而不是重载的构造函数来实例化对象更有意义?
最佳答案
如果您想要更宽松的联轴器,那么工厂就更有意义了,因为您可以致电汽车制造厂,传入suv枚举,然后返回正确的类。您的应用程序不关心实际返回了哪个类,只要它满足您的需求即可。