天天看点

第二条 遇到多个构造器参数时,要考虑用构建器

  静态工厂和构造器都有个共同的局限性,就是它们都不能够很好的扩展到大量的可选参数。

如:

我们可以看到利用构造器方式,有多个参数时,很难控制其灵活性。因而我们选择尝试给每个值设置默认值:

  调用初始化

这是常见的javabean模式,通过setter方法来构建对象,但是这也阻止了类做成不可变的可能,会有多线程安全问题。

那么我们来看看另外一种方式:

调用方式:

这样通过builder模式,实现了可选参数构建对象实例。