2012-12-13 182 views
4

可能重複: Does Java support default parameter values?Java是否支持默認參數值?

假設我想在C++缺省參數值,那麼我們就可以如下表達出來。

void functionName(char *param1, int param2=2); 

但是,如果我想在Java中做到這一點,那麼是否有可能。目前我正在做如下操作

public functionName(String param1) 
{ 
    this(param1, 2); 
} 

public functionName(String param1, int param2) 
{ 
.......... 
} 
+1

當您回答問題時,右欄顯示可能有重複。發佈前請檢查它。 –

回答

12

這是不可能的Java,但你想,你可以使用Builder Pattern,據說這是this Stack Overflow answer

正如答案參考,Builder模式可以讓你寫這樣

Student s1 = new StudentBuilder().name("Eli").buildStudent(); 
Student s2 = new StudentBuilder() 
       .name("Spicoli") 
       .age(16) 
       .motto("Aloha, Mr Hand") 
       .buildStudent(); 

代碼在某些領域可以有缺省值或以其他方式是可選的。

+1

+1替代 –

+0

@DougT。多謝兄弟。 –