请注意:当我们定义类级变量: List或Map时,我读到了其中的一些内容。应该始终使用新操作符初始化它们:示例--私有列表学生=新的ArrayList();但是架构师反对它,并告诉我在类级别初始化变量时它将消耗10个桶。但是,我非常反对:在使用之前检查学生列表为null。
请告知我的最佳实践;是否在类级别初始化数组列表。
请指点。如果您有更好的参考URL或书籍名称的java代码实践,请提供给我。
发布于 2013-08-23 12:23:24
你的问题没有足够的信息来做出最后的裁决。
如果您的整个程序是这样的,您有无数的列表和映射变量,但是每个特定的运行只使用其中的几个,那么就有了延迟初始化的情况。然而,这在实践中是极为罕见的。
就我个人而言,我总是喜欢private final
变量来保存容器类型的对象(列表、地图、集合)。清晰的代码,没有bug,更少的冗余检查(正如您注意到的),线程安全(至少就发布而言)。
延迟初始化有许多缺陷,而且由于缺乏反对它的好论据,通常推荐的最佳实践是急切的初始化。
https://stackoverflow.com/questions/18402673
复制相似问题