Вы можете использовать перегрузку функции.С перегрузкой тоже все в порядке, но в случае, если вам нужны значения по умолчанию для нескольких аргументов, вы в конечном итоге создадите множество методов со всеми возможными комбинациями аргументов по умолчанию, для примера, который вы используете, представьте, что вы хотите иметь значение по умолчанию для 3 аргументов.у вас получится
public void methodA(A arg1) { }
public void methodA( B arg2,) { }
public void methodA(C arg3) { }
public void methodA(A arg1, B arg2) { }
public void methodA(A arg1, C arg3) { }
public void methodA( B arg2, C arg3) { }
public void methodA(A arg1, B arg2, C arg3) { }
Итак, вот что я сделал для меня, вы также можете использовать
public static void main(String[] args)
{
defaultParameter();
defaultParameter(true);
}
public static void defaultParameter(Boolean ...gender)
{
boolean genderBoolean = false; // It the default value you want to give
if(gender.length == 1)
{
genderBoolean = gender[0]; // Overrided Value
}
System.out.println(genderBoolean);
}
Приведенный выше код приведет к получению
false
true
Я нахожу здесь пример java-default-parameter-values