Effective java02-当构造函数参数太多时使用构造器

静态工厂或构造函数中的参数有多个,而有些参数是可选的,也就是需要根据要构造的对象的实际情况选择相关的参数来传参。而且因为构造场景太多了,导致很难穷举构造函数或即使可以穷举也会因为构造函数太多造成易用性大大下降,用错的风险也大大升高。如果采用getter/setter方式,则可能因为对象处于中间状态,很难对其做参数校验。的如果采用构建器就可以根据实际情况需要一个一个地设置有用的参数的值,最终通过调用build()方法来构建出最终的对象。

优点:易用、易读、安全性好
缺点:在对性能要求比较高的场景下,构造器模式会加重性能负担。

你可能感兴趣的:(Effective java02-当构造函数参数太多时使用构造器)