Я также видел вариант 2 как наиболее распространенный:
int importance;
public int getImportance()
{
return importance;
}
public void setFoo(int importance)
{
this.importance = importance;
}
Среды разработки, такие как Eclipse и Netbeans, будут автоматически записывать методы получения и установки в указанном выше формате.
Есть несколько преимуществ использования этого метода:
Не использует символ подчеркивания (_
) в имени поля - подчеркивания не рекомендуются для непостоянных имен полей.
Использование символа подчеркивания в идентификаторе не рекомендуется, за исключением идентификаторов для констант.
На странице Переменные в Учебниках Java упоминается следующее о подчеркивании:
Если ваша переменная хранит константу
значение, например static final int
NUM_GEARS = 6
, соглашение меняется
немного заглавными буквами
и разделяя последующие слова
символ подчеркивания. По
условный знак подчеркивания
никогда не используется в другом месте.
(выделение добавлено.)
Поскольку имена полей не являются константами, в соответствии с тем, что написано на этой странице, не следует использовать подчеркивания в непостоянных полях.
IDE могут автоматически добавлять комментарии Javadoc в соответствии с именем параметра метода, поэтому было бы полезно иметь имя поля в списке параметров.
Ниже приведен пример автоматически сгенерированного Javadoc:
/**
*
* @param importance <-- Parameter name in Javadoc matches
* the parameter name in the code.
*/
public void setImportance(int importance)
{
this.importance = importance;
}
Наличие в Javadoc имени поля имеет еще одно преимущество - В средах IDE, для которых выполняется завершение кода, можно использовать имя поля в Javadoc для автоматического заполнения имен параметров:
// Code completion gives the following:
this.getImportance(importance);
Придание значения имени поля и имени параметра облегчит понимание того, что на самом деле представляет параметр.
Вот некоторые из достоинств, которые я могу придумать в данный момент, и я считаю, что это, скорее всего, самый распространенный способ именования параметров в Java.