Правила именования переменных, констант, классов, интерфейсов, перечислений, пакетов в Java
В разных языках программирования вы встретите разные стили наименования переменных, например: some_counter, $somecounter, SomeCounter, someCounter, mSomeCounter и так далее.
В языке Java с этим строго, всего несколько правил:
1) Все переменные и методы в Java всегда именуются только используя так называемую нижнююВерблюжьюНотацию или lowerCamelCase.
В этой нотации, когда переменная состоит из нескольких слов, то
а) все слова пишутся слитно,
б) первое слово пишется с маленькой буквы,
в) каждое следующее слово пишется с большой буквы.
Переменные никогда не должны начинаться со знака подчеркивания или знака доллара (хоть формально такую переменную и можно задекларировать).
Пример:
int someCounter; double himmelDonnerWetter; Ship[] ourShips; char friendZone;
1a) Если в переменной встречается аббревиатура из трех или более букв – то используется CamelCase вместо верхнего регистра (например, вместо parseDBMXMLFromIPAddress
нужно писать parseDbmXmlFromIPAddress
). Двухбуквенные аббревиатуры можно тоже писать используя CamelCase, если это повысит читабельность (например, parseDbmXmlFromIpAddress
).
2) Константы именуют только БОЛЬШИМИ_БУКВАМИ с использованием подчеркивания для связи слов.
Пример:
static final int MAX_PARTICIPANTS = 10;
3) Все названия классов, интерфейсов и перечислений даются только с использованием ВерхнейВерблюжьейНотации или UpperCamelCase
В этой нотации, когда переменная состоит из нескольких слов, то
а) все слова пишутся слитно,
б) первое слово пишется с большой буквы,
в) каждое следующее слово пишется с большой буквы.
Пример:
class SomeCounter { } class HimmelDonnerWetter { } class BigShip { }
Имейте ввиду, что неспособность следовать этим правилам может привести к путанице и ошибочному коду. Например, widget.expand() и Widget.expand() подразумевают существенно различное поведение: widget.expand() подразумевает вызов метода expand() в экземпляре с именем widget, тогда как Widget.expand() подразумевает вызов статического метода expand() в классе Widget.
4) Пакеты именуют только маленькими_буквами с использованием подчеркивания для связи слов.
Например:
package io.khasang.java.big_lesson;
0 комментарии