Wednesday, 25 January 2017

methods - Are default parameter values supported by Java?





Possible Duplicate:
Does Java support default parameter values?






Suppose I want to make default parameter value in C++, then we can express it as below.




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


But if I want to make this in Java, then is it possible. Currently I am doing as below



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


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

Answer



It is not possible in Java,but you want you can use the Builder Pattern, which is said this answer.



As described in the answer reference, the Builder Pattern lets you write code like




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


in which some fields can have default values or otherwise be optional.



No comments:

Post a Comment

c++ - Does curly brackets matter for empty constructor?

Those brackets declare an empty, inline constructor. In that case, with them, the constructor does exist, it merely does nothing more than t...