-

자바언어의 이름 규칙


Overview

프로그램 소스의 가독성을 위해 이름 규칙은 중요하다. 자바언어에서 사용되는 이름들은 의미있고 모호하지 않는 이름을 사용하여야 한다.



1. 클래스 이름

클래스 이름은 명사를 사용한다. 첫번째 단어의 첫글자는 대문자로 시작하고, 두단어이상의 명사가 사용되는 경우는 읽기 쉽도록 두번째 단어의 첫글자를 대문자로 사용하는 카멜표현식을 사용한다.

public class String{...}
public class ApplicationContext{...}


2. 인터페이스 이름

인터페이스가 구현클래스에 무엇인가를 제공하고자 하는 경우에는 이름은 형용사 이름을 사용한다.(~able, ~ible)
그렇지 않은 경우에는 명사를 사용하여도 된다. 인터페이스의 이름은 클래스 이름 규약을 따른다.

interface Serializable{...}
interface Controller{...}


3. 메서드 이름

메서드의 이름은 메서드의 성격을 나타내는 동사를 사용한다. 소문자를 사용하고, 두단어 이상이 사용되는 경우는 첫번째 단어는 소문자를 사용하고 두번째 문자부터는 첫번째 문자를 대문자를 사용하는 카멜표현식을 사용한다. 형용사나 명사가 포함되기도 한다.

public void print(){...}
public String getUserByKey(){...}


4. 변수, 지역변수, 매개변수

변수의 이름은 명사를 사용하고 소문자를 사용한다. 두단어 이상의 결합은 메서드 이름 규약과 동일하다.
반복문 같은 구문안에서 임시로 사용되는 변수의 경우는 i,j,k,m같은 이름을 사용하고, 숫자타입의 경우는 m, 문자타입의 경우는 c,d,e등을 사용한다.
 
int age;
String name;
int myAge;
String myName;
for(int i:i<10;i++){...}


5. 제너릭 타입의 매개 변수 이름

일반적으로 타입 매개변수는 대문자 T를 사용하는데 자바의 컬럭션 프레임워크에서 많이 활용된다.
그외에도 대문자 E(collection elements), S(service loader), K와V(맵타입의 키,값)가 사용된다.

interface List<T>{...}
interface Map<K,V>{...}
   

6. 상수 이름

상수는 모두 대문자로 사용하고, 두단어 이상의 결합은 underscores를 이용하여 구분한다.

public static final int MAX_NUM = 100;


7. Enum 이름

Enum이름은 클래스 이름 규약을 따르며, 세부 항목의 이름은 모두 대문자를 사용한다.

enum Season {SPRING, SUMMER, FALL, WINTER}


8. 패키지 이름

패키지 이름은 소문자만을 사용하거나 underscores가 사용되기도 한다. 보통 유일한 이름을 사용하기 위해 인터넷 도메인 주소의 역순을 많이 사용한다. 자바 기본 라이브러리에서 사용중인 java와 javax의 이름 사용은 제한한다.

package com.naver.cafe.jjdev;


9. @애노테이션 이름 (자세한 참조 클릭)

애노테이션의 이름은 기본적으로 클래스 이름의 규약을 따르며, 애노테이션의 성격에 따라 형용사나 동사, 명사를 사용한다.

@Documented
@Override
@Value
@MyAnnotation


다른 카테고리의 글 목록

서버측 언어/JAVA 카테고리의 포스트를 톺아봅니다