我遇到了一些具有以下结构的Java代码:
public MyParameterizedFunction(String param1, int param2)
{
this(param1, param2, false);
}
public MyParameterizedFunction(String param1, int param2, boolean param3)
{
//use all three parameters here
}
void MyParameterizedFunction(String param1, int param2, bool param3=false);
Java是否支持这种语法?有什么理由使两步语法更可取?
不,但是你可以使用构建器模式,如本堆栈溢出答案中所述。
Student s1 = new StudentBuilder().name("Eli").buildStudent();
Student s2 = new StudentBuilder()
.name("Spicoli")
.age(16)
.motto("Aloha, Mr Hand")
.buildStudent();
其中某些字段可以具有默认值,否则为可选。