Потихоньку подучиваю Java

В Яве нет значений по умолчанию для аргументов методов. То есть так нельзя:

public int method(int a, int b = 1, int c = 2) {
	return a + b + c;
}

Реализовывать это нужно через жопу перегрузку:

public int method(int a, int b, int c) {
	return a + b + c;
}
 
public int method(int a, int b) {
	return method(a, b, 2);
}
 
public int method(int a) {
	return method(a, 1);
}

Если подумать, то да, значениям по умолчанию может быть сложно ужиться в языке с такой вещью, как перегрузка методов. Однако, для большей уверенности полез в гугл → «java параметры по умолчанию». На достаточно большом количестве форумов задаётся вопрос, есть ли эти самые значения по умолчанию или нет. И да, действительно, их нет. Но что самое интересное, поголовно все отвечающие (в большинстве заслуженные дядьки) делают удивлённые o_O и спрашивают «а где такое вообще может понадобиться?».

Вот так вот, казалось бы очевидная и всем известная вещь. А вот и не очевидная и известная далеко не всем.