笔记
telescoping constructor
在创建构造函数的时候,采取以下策略:第一个构造函数使用必选的参数,第二个增加一个可选参数,第三个增加两个可选参数,以此类推。
缺点:类拥有过多构造函数。构造函数的参数繁多,使用的时候如果相邻的两个参数的类型相同,很容易出错。JavaBeans Pattern
构造参数不使用参数或者只使用必选参数。其他的参数通过set方法设置。
缺点:对象可能还没初始化完就被其他线程使用了。有不一致的风险。The Builder pattern
每个对象附带一个Builder类。先将参数设置到Builder类对象中,最后调用build()方法构建目标对象。
缺点:需要新增一个Builder类。如果构造函数的参数不多,用Builder Pattern略显繁琐。
理解与思考
-
这一节主要是关于如何处理多参数构造函数的问题。可选的方案有:
- telescoping constructor
- JavaBeans Pattern
- The Builder pattern
三类方法,各有优缺点。应具体情况具体分析,采用适合的方法。