是否有之間的差異(在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