Java支持默认参数值吗? [重复]

问题描述 投票:6回答:2

可能重复:Does Java support default parameter values?

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

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

但是,如果我想用Java制作它,那么它是否可能。目前我正在做如下

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

public functionName(String param1, int param2)
{
..........
}
java methods parameters overloading default-value
2个回答
14
投票

这在Java是不可能的,但是你想要你可以使用Builder Patternthis Stack Overflow answer

如答案参考中所述,Builder Pattern允许您编写类似的代码

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

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


2
投票

不.Java不支持此功能。

Does Java support default parameter values?

© www.soinside.com 2019 - 2024. All rights reserved.