Language/Java

Java 변수 명명 규칙

괘창 2024. 6. 19. 22:20

■ 변수 명명 규칙

자바에서 변수 이름을 짓는데는 규칙과 관례가 있다.

규칙은 필수이며, 규칙을 지키지 않으면 컴파일 오류가 발생한다.

관례는 필수는 아니지만 전세계 개발자가 해당 관례를 따르기 때문에 사실상 규칙이다.


▶규칙

  • 변수 이름은 숫자로 시작할 수 없다. (예: 1num, 1st)
    # 그러나 숫자를 이름에 포함하는 것은 가능하다. (예 : myVar1, num1)
  • 이름에는 공백이 들어갈 수 없다.
  • 자바의 예약어를 변수 이름으로 사용할 수 없다. (예: int, class, public)
  • 변수 이름에는 영문자 (a-z, A-Z), 숫자(0-9), 달러 기호($) 또는 밑줄(_)만 사용할 수 있다.

▶관례

  • 소문자로 시작하는 낙타 표기법
    # 변수 이름은 소문자로 시작하는 것이 일반적이다. 
    여러 단어로 이루어진 변수 이름의 경우, 첫 번째 단어는 소문자로 시작하고
    그 이후의 단어는 대문자로 시작하는 낙타 표기법(camel case)을 사용한다.
    ※ orderDetail, myAccount
낙타표기법
낙타표기법(Camel Case)은 프로그래밍에서 변수, 함수, 클래스 등의 이름을 지을 때 많이 사용하는 표기법 중 하나다.
해당 표기법의 이름은 작성한 이름이 여러 단어로 구성되어 있을 때, 각 단어의 첫 글자가 대문자로 시작하고
이 대문자들이 낙타의 등봉처럼 보이는 것에서 유례
대부분의 프로그래밍 언어에서는 이름에 공백을 포함할 수 없기 때문에 낙타표기법은 이런 제한을 우회하는 좋은 방법!

■ 자바 언어의 관례 한번에 정리

클래스는 대문자로 시작, 나머지는 소문자로 시작

  • 자바에서 클래스 이름의 첫 글자는 대문자로 시작하며, 나머지는 모두 첫 글자를 소문자로 시작한다.
    여기에 낙타 표기법을 적용하면 모든 관례 끝!
  • 예시 : 클래스 첫 글자 대문자, 나머지는 모두 첫 글자 소문자로 시작 + 낙타 표기법
    # 클래스 : Person, OrderDetail
    # 변수를 포함한 나머지 : firstName, userAccount
  • 예외 2개
    # 상수는 모두 내문자를 사용하고 언더바로 구분한다.(예 : USER_LIMIT)
    # 패키지는 모두 소문자를 사용한다. (ort.spring.boot)
참고 : 변수 이름은 의미있고, 그 용도를 명확하게 설명해야 한다.
# a, b : 이런 변수는 용도를 설명하지 않으며, 단순한 예제에서만 사용하는 것이 좋다.
# studentCount, maxScore, userAccount, orderCount : 용도를 명확하게 설명한다.