gpt4 book ai didi

java - 我应该保持 Java 中的实例变量始终初始化吗?

转载 作者:搜寻专家 更新时间:2023-10-31 08:06:54 24 4
gpt4 key购买 nike

我最近开始了一个新项目,我试图让我的实例变量始终初始化为某个值,因此它们在任何时候都不为空。下面的小例子:

public class ItemManager {

ItemMaster itemMaster;
List<ItemComponentManager> components;

ItemManager() {
itemMaster = new ItemMaster();
components = new ArrayList<ItemComponentManager>();
}

...
}

主要是为了避免在代码中某处使用实例变量之前对 null 进行繁琐的检查。到目前为止,它运行良好并且您大多不需要 null 值,因为您还可以检查空字符串或空列表等。我没有将这种方法用于方法范围变量它们的范围非常有限,因此不会影响代码的其他部分。

这一切都是实验性的,所以我想知道这种方法是否可行,或者是否存在一些我尚未发现的缺陷。保持实例变量初始化通常是个好主意吗?

最佳答案

我通常将空集合和空集合视为两个独立的事物:

空集合意味着我知道可用的项目为零。空集合会告诉我不知道集合的状态,这是另一回事。

所以我真的不认为这是非此即彼。如果我在构造函数中初始化它们,我会声明变量 final。如果您将其声明为 final,读者就会很清楚该集合不能为 null。

关于java - 我应该保持 Java 中的实例变量始终初始化吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/545391/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com