2011-04-15 55 views
1

有誰知道這是什麼官方字?這裏有一個例子:從不同的方法參數中調用返回方法

public void makeStuff(int total) { 
    //method logic 

現在,讓我們住我把這種方法是這樣的:

new Thing().makeStuff(new OtherClass().getTotal); 
//OtherClass holds the int total that is returned 

這是不好的編程風格,這樣做呢?讓我們假設標準的方式不是一種選擇。 (即new Thing()。makeStuff(7));

謝謝大家提前。 馬特

+0

似乎很好,除了代碼的可讀性受到一點影響。 – lobster1234 2011-04-15 07:48:57

+0

我看不到有什麼問題... – lamwaiman1988 2011-04-15 07:52:05

+0

完美。多謝你們。 – 2011-04-15 08:00:34

回答

0

我不會創建這樣一個對象來獲取一個值,我不會把一個場getTotal

你可能會做

new Thing().makeStuff(new OtherClass().total); 

OR

new Thing().makeStuff(new OtherClass().getTotal()); 

new Thing().makeStuff(OtherClass.getTotal()); 
3

那麼,如果你不打算保持對類的任何引用,那麼爲什麼不使用靜態方法呢?

public static void makeStuff(int total) { 
//method logic 

,並在其他類總量將始終是相同的 - 因爲它沒有被設置,除非getTotal應該是一個方法調用的機會(getTotal()),在這種情況下,這也可能是一個靜態的電話,即

Thing.makeStuff(OtherClass.getTotal()); 
+0

我同意......但是,我必須將其作爲實例變量,原因是我不會讓所有人都感到困擾。但是,謝謝您的意見。這種想法似乎是以這種方式初始化參數是好的。 – 2011-04-15 08:02:24