如果一个对象有多个参数时,应该如何处理?
代码大全2中提到过,一个函数的参数最好不要超过7个,我们熟悉的线程池参数就是7个,构造方法也不例外,在笔记本电脑中,一屏幕代码最多也就是7个左右的参数。
构建一个对象,通常我们会如何处理呢?
1、构造函数,下面的类BuilderDemo有8个属性
这样的代码是十分冗长的,如果有多个构造函数的话,是十分混乱的。
于是我们有个新的想法,创建这些属性的getter/setter方法
2、JavaBeans模式
这样的做法因为将设置属性分为了很多步,可能会出现线程安全问题,导致程序出现对象不一致的情况,需要开发人员自己去把控。
3、Builder模式
可耻的照扒了书中的代码如下: