Bha*_*ngi 12 java design-patterns
我非常了解构建模式.在Joshua Bloch的有效Java中,第2项中描述的构建器模式也已经完成了.
在这里,我的问题是 - 在实例化的类中保留构建器类是否有任何特定的好处?
我们也可以将它作为单独的构建器类并执行相同的操作.
请具体说明您的答案.我已经知道内部类可以访问构建类的私有成员以及所有这些.
See*_*ose 14
您显然已经知道嵌套类(无论是否为静态)可以访问周围类的私有成员.
所以真正的问题是:
什么成员是私人的,并从建设者访问它?
答案是......构造函数!您希望将构造函数设为私有,以便根本不允许访问.您希望允许访问构建器,但构建器必须在某个时间调用构造函数...以便...构建它.
如果你有一个没有嵌套的构建器 - 可能是一个顶级类 - 你必须使目标类的构造函数至少包为private.这通常不是想要的.
结论:构建器应该是嵌套类.
哦,Davide Lorenzo MARINO的答案也是如此:当然,这也是建造者及其周围阶级的强烈关系.
| 归档时间: |
|
| 查看次数: |
4953 次 |
| 最近记录: |