从文体上讲,在构造函数中或在声明字段的位置初始化Java字段会更好吗?例如:内联或在构造函数中初始化字段
public class Foo {
private final List<String> l;
public Foo() {
this.l = new LinkedList<String>();
}
}
...或
public class Foo {
private final List<String> l = new LinkedList<String>();
}
我也通常青睐,因为它似乎更清楚的是前者。但是,后者显然会导致代码更紧凑。
[最佳实践:初始化构造函数或声明中的类字段?]的可能的重复?(http://stackoverflow.com/questions/24551/best-practice-initialize-class-fields-in-constructor-or-at - 声明) – 2012-03-21 11:23:30
前者对我来说很好,因为只有在创建对象时才会初始化您的列表。 – sgowd 2012-03-21 11:23:44
虽然在第二种情况下也是如此。 – aioobe 2012-03-21 11:26:02