JAVA/포스팅

자바 식별자

짜집퍼박사(짜박) 2023. 10. 5. 00:11

자바에서 식별자(identifier)는 클래스, 인터페이스, 메서드, 변수 등의 이름을 정의하는 데 사용되는 토큰입니다. 식별자는 프로그램에서 해당 요소를 고유하게 식별하기 위해 사용됩니다.

자바 식별자의 규칙

 

1. 첫 문자 : 식별자의 첫 문자는 알파벳(a-z 또는 A-Z), 밑줄(_), 또는 달러 기호($)이어야 합니다. 숫자로 시작할 수 없습니다.

2. 다음 문자 : 식별자의 첫 문자 이후의 문자는 알파벳, 숫자(0-9), 밑줄(_), 또는 달러 기호($)가 될 수 있습니다.

3. 대소문자 구분 : 자바는 대소문자를 구분하는 언어이므로 myVariable와 MyVariable은 다른 식별자로 간주됩니다.

4. 길이 제한 : 식별자의 길이에 대한 제한은 없습니다. 그러나, 가독성을 위해 적절한 길이를 선택하는 것이 좋습니다.

5. 예약어 사용 금지 : 자바의 예약어 (int, return, class 등)는 식별자로 사용될 수 없습니다.

좋은 식별자 네이밍 규칙

자바의 식별자 규칙과 네이밍 규칙을 따르면 코드의 가독성과 유지 보수성이 크게 향상됩니다.

 

1. 의미 있는 이름 : 식별자는 해당 요소의 용도나 기능을 나타낼 수 있도록 명확하게 선택해야 합니다. 예를 들어, studentName이라는 변수 이름은 학생의 이름을 저장한다는 것을 명확하게 나타냅니다.

2. 카멜 케이스 사용 : 여러 단어로 구성된 식별자는 첫 단어는 소문자로 시작하고, 이후 각 단어의 첫 글자는 대문자로 작성하는 카멜 케이스(camelCase)를 사용하는 것이 일반적입니다. 예: calculateTotalSum, getStudentName.

3. 클래스 이름 : 클래스나 인터페이스의 이름은 대문자로 시작하는 것이 관례입니다. 예: Student, BankAccount.

4. 상수 : 상수는 모두 대문자로 작성하며, 단어 간에는 밑줄을 사용합니다. 예: MAX_SIZE, PI_VALUE.

자바 식별자 관례

자바의 식별자 관례(네이밍 컨벤션)는 코드의 일관성과 가독성을 향상시키기 위한 것입니다. 아래는 자바에서 권장되는 주요 식별자 관례입니다:

1. 클래스명

클래스명은 항상 대문자로 시작하며, 여러 단어로 구성될 경우 각 단어의 첫 글자도 대문자로 시작하는 카멜 케이스(CamelCase)를 사용합니다.

예) Student, BankAccount, EmployeeDetails

2. 인터페이스명

클래스명과 동일한 규칙을 따릅니다. 대문자로 시작하고, 여러 단어일 경우 카멜 케이스를 사용합니다.

예) Runnable, Serializable

3. 메서드명

메서드명은 소문자로 시작하며, 여러 단어로 구성될 경우 두 번째 단어부터는 첫 글자를 대문자로 사용하는 카멜 케이스를 사용합니다.

예) calculateTotal(), getStudentName()

4. 변수명 : 메서드명과 동일한 규칙을 따릅니다. 소문자로 시작하고, 여러 단어일 경우 카멜 케이스를 사용합니다.

예) firstName, bankAccountNumber

5. 상수명

상수는 모두 대문자로 작성하며, 여러 단어로 구성될 경우 단어 사이에 밑줄(_)을 사용합니다.

예) MAX_VALUE, PI

6. 패키지명

패키지명은 모두 소문자로 작성합니다. 여러 단어로 구성되어도 밑줄이나 카멜 케이스 대신 소문자만을 사용합니다.

예) java.util, org.springframework

7. 열거형명 (Enums)

클래스명과 유사하게 열거형명도 대문자로 시작하는 카멜 케이스를 사용합니다.

예) DayOfWeek, Color

8. 제네릭 타입 파라미터명

일반적으로 한 글자 대문자로 표현되며, T는 타입을 나타내는 데 흔히 사용됩니다. 더 구체적인 경우에는 다른 대문자를 사용하거나 더 긴 이름을 사용할 수 있습니다.

예) T, E (for Element), K (for Key), V (for Value)

 

With ChatGPT

'JAVA > 포스팅' 카테고리의 다른 글

자바 변수 초기화  (0) 2023.10.15
자바 변수의 선언  (0) 2023.10.15
자바 변수  (0) 2023.10.15
자바의 주석(comment)  (0) 2023.10.15
자바 프로그램의 구조  (0) 2023.09.29