3

我有一个带有 3 个参数的 Java 方法,我希望它也有第四个“可选”参数。我知道 Java 不直接支持可选参数,所以我编写了第 4 个参数,当我不想传递它时,我传递null. (然后在使用它之前检查该方法null。)我知道这有点笨重......但另一种方法是重载该方法,这将导致相当多的重复。

在 Java 中实现可选方法参数的更好方法是:使用可为空的参数,还是重载?为什么?

4

2 回答 2

10

编写一个单独的 3 参数方法,转发到 4 参数版本。不要弄混它。

有这么多参数,您可能需要考虑构建器或类似的。

于 2010-03-17T15:13:11.623 回答
4

使用这样的东西:

public class ParametersDemo {

    public ParametersDemo(Object mandatoryParam1, Object mandatoryParam2, Object mandatoryParam3) {
    this(mandatoryParam1,mandatoryParam2,mandatoryParam3,null);
    }


    public ParametersDemo(Object mandatoryParam1, Object mandatoryParam2, Object mandatoryParam3, Object optionalParameter) {
    //create your object here, using four parameters
    }

}
于 2010-03-17T15:19:29.277 回答