코린이의 소소한 공부노트

변수 선언 & 명명 규칙 본문

Java

변수 선언 & 명명 규칙

무지맘 2021. 12. 6. 17:17

자바에서는 변수를 선언할 때 타입과 변수명, 세미콜론(;)을 이용한다.

예를 들어 정수형이고 이름이 money인 변수를 만들고 싶다면,

int money;

라고 선언한다면 4 byte 크기의 int타입이고 이름이 money인 공간이 만들어진다. 이렇게 만들어진 공간에 10,000을 저장하고 싶다면,

money = 10000;

이렇게 입력해주면 된다. 여기서 등호는 같다는 뜻이 아닌, 오른쪽 값을 왼쪽에 대입한다는 뜻이다.

위에 쓴 두 줄을 한꺼번에

int money = 10000;

이렇게 써도 된다. 위 3줄의 코드 중 2, 3번째 코드처럼 변수에 처음으로 값을 저장하는 것을 변수 초기화라고 한다.

 

지금 우리가 쓰는 변수는 지역변수(local variable)인데, 지역변수는 선언 후 초기화를 해야 그 변수를 사용할 수 있다. 지역변수 이외의 변수들은 선언 후 초기화를 하지 않아도 기본값이 저장된다. 타입별 기본값은 다음과 같다.

[그림 005] 타입별 기본값

여기서 null은 어떤 객체도 참조하고 있지 않다는 뜻이다.

 

변수의 이름을 만들 때 지켜야 할 규칙이 있다. 이것이 명명규칙(Naming convention)이다.

1. 변수의 이름은 대소문자가 구분되며, 길이에는 제한이 없다.

 - Apple, apple, aPple가 모두 다른 변수로 간주된다.

 - 길이가 과도하게 긴 것은 안된다.

2. 예약어(reserved word)는 변수 이름으로 사용할 수 없다.

 - 예약어 또는 키워드란 int, long, String 등과 같이 자바에서 사용하기 위해 미리 정해둔 단어이다.

 - 코딩하다보면 파란색 등으로 색깔이 입혀지는 단어가 예약어라고 보면 된다.

 - boolean값인 true는 예약어이기 때문에 사용할 수 없지만, True는 가능하다.

3. 변수 이름은 숫자로 시작할 수 없다.

 - gs25는 가능하지만 7eleven은 안된다.

4. 변수 이름에 사용 가능한 특수문자는 '_'와 '$'뿐이다.

 - mar_vel, $trange는 가능하다.

 - mar-vel, Str@nge는 안된다.

 

위의 4가지 규칙을 어기지 않는 모든 변수 이름은 허용된다. 하지만 너무 이상하게 만들어두면 내가 내 코드를 봐도 가독성이 떨어지는 문제가 생길 수 있고, 나중에 협업할 때도 도움이 안 되기 때문에 다음 권장사항을 지키는 것이 좋다.

1. 클래스 이름의 첫 글자는 항상 대문자로 한다.

 - 변수나 메서드 이름의 첫 글자는 소문자로 한다.

2. 여러 단어로 이루어진 이름은 단어의 첫 글자를 대문자로 적는다.

 - studentName, priceOfPizza: 변수 또는 메서드 이름

 - StringBuffer, NumberOfCat: 클래스 이름

3. 상수의 이름은 대문자로 한다. 단어는 '_'로 구분한다.

 - PI, MAX_NUM 등

 - 상수에 대해서도 후에 설명 예정

4. 가능하면 변수의 의미를 담아 이름을 짓도록 한다.

 - 수학 점수를 나타내는 변수라면 abcd보다는 mathScore 등이 낫다.

'Java' 카테고리의 다른 글

문자와 문자열  (0) 2021.12.08
변수와 리터럴의 타입 일치/불일치  (0) 2021.12.08
변수, 상수(constant), 리터럴(literal), 접미사  (0) 2021.12.07
변수의 데이터 타입(data type)  (0) 2021.12.06
변수(variable)  (0) 2021.12.03