关于方法:Java支持默认参数值吗?

Are default parameter values supported by Java?

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
Does Java support default parameter values?

假设我想在C++中做默认的参数值,那么我们可以把它表达如下。

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

但是如果我想在Java中实现这一点,那么这是可能的。目前我做的如下

1
2
3
4
5
6
7
8
9
public functionName(String param1)
{
    this(param1, 2);
}

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


Java中是不可能的,但是您希望可以使用builder模式,也就是说这个堆栈溢出答案。

如应答参考中所述,构建器模式允许您编写类似

1
2
3
4
5
6
Student s1 = new StudentBuilder().name("Eli").buildStudent();
Student s2 = new StudentBuilder()
                 .name("Spicoli")
                 .age(16)
                 .motto("Aloha, Mr Hand")
                 .buildStudent();

其中一些字段可以有默认值,或者是可选的。


不。Java中不支持此功能。

Java是否支持默认参数值?