2016-04-14 79 views
0

在過去,我不得不創造一些無法真正變成一堆小方法的巨大方法,因爲這樣做根本沒有任何意義。如果(真)減少範圍:好主意或垃圾?

由於初始化很多變量可能會佔用相當大的內存,所以我問自己,簡單地使用if(true)語句是否有助於縮小這些情況下的範圍,從而減少內存負載。

例子:

if (true) { 
MyClass obj1 = new MyClass(1); 
MyClass obj2 = new MyClass(2); 
} 
// ...rest of method which does not need obj1 and obj2 

這是一個實用的方法還是徹底的垃圾?

+0

這是否誠實看起來像可讀的代碼給你?而且,你如何看待這會減少內存負載? – rmlan

+1

在方法完成之前,變量會被垃圾收集,這比等待整個方法結束並且看到它的變量在那個時候被垃圾收集好得多。 –

+0

一個簡單的'obj1 = null'(和一個註釋)將會更加可讀。 – nyname00

回答

3

您不需要if(true)來減少變量的範圍。

這將足以

{ 
MyClass obj1 = new MyClass(1); 
MyClass obj2 = new MyClass(2); 
} 
+0

哇,我真的不知道你可以做到這一點,非常感謝。 –