是否有之间的差异(在Java或C#):什么是设置和实例化类级别变量的正确方法?
public class Foo {
Bar1 bar1;
Bar2 bar2;
public Foo(Bar1 bar1, Bar2 bar2) {
this.bar1 = bar1;
this.bar2 = bar2;
}
}
而且
public class Foo {
Bar1 bar1 = null;
Bar2 bar2 = null;
public Foo(Bar1 bar1, Bar2 bar2) {
this.bar1 = bar1;
this.bar2 = bar2;
}
}
对于对象,它不应该不管你是否指定空或不是 - 这是隐含的,对不对?
我的老板坚持分配每个值null
。对于字符串,我明白分配String str = ""
,因为那里存在很大的差异,但我不太确定为什么巨大的交易对象。
而且,它是不好的做法,做到以下几点:
public class Foo {
Bar1 bar1 = new Bar1();
Bar2 bar2 = new Bar2();
public Foo(Bar1 bar1, Bar2 bar2) {
this.bar1 = bar1;
this.bar2 = bar2;
}
}
Uuughh当他们说他们的老板坚持这个或那个没有任何区别的编程细节时,我感到非常糟糕。作为一名初级程序员进行月光照明的开发经理,并讨论无用的语义。不要忍受它,姐妹和兄弟。 – 2012-01-14 02:45:03
实际上,我不明白分配'str =“”',除非有充分理由说它应该是空字符串。至少如果你错过了将它从null改为bug的话,这个bug可能会更快。或者一个字符串应该是空的,或者它不应该,随机地抛出'=“”'只是破坏。 – 2012-01-14 03:09:12