[JAVA] 2. 변수의 선언

2014. 12. 18. 14:44프로그래밍/JAVA

    목차

변수의 선언

 

 

우리가 변수를 사용하기 위해서는 변수를 우선 선언을 하고 나서 사용을 해야만 한다.

 

변수를 선언한다는 것은 메모리 공간에 데이터타입에 맞는 저장 공간이 확보되어 사용할 준비가 되는 것입니다.

 

변수를 선언할 때에는 우리가 사용하고자 하는 용도에 맞게 변수의 데이터타입을 지정해 줘야되는데

 

데이터타입에는 크게 두가지 분류로 나누어 볼수 있다.

 

⑴ java Compiler가 지원하는 데이터타입 8가지

 

⑵ User defined types의 데이터타입

 

쉽게 기억하자면 기본적으로 지원하는 8가지를 제외하고는 모두 사용자들이 만들어 내는 데이터타입이다 보시면 됩니다.

 

그럼 저 데이터타입을 가지고 어떻게 변수를 선언하는지 보도록 하자.

 

 

[선언법]

데이터타입 변수명;

[초기화]

변수명 = 데이터타입에 맞는 값;

[선언 및 초기화]

데이터타입 변수명 = 데이터타입에 맞는 값;

 

 

변수는 선언과 초기화 작업을 따로 해주시는 방법이 있고 선언과 동시에 초기화를 해주는 방법이 있습니다.

 

그럼 이제 데이터타입의 종류의 대해서 알아보도록 하자.

 

 

 데이터타입 

 

- 사용자 정의 타입의 데이터 타입은 제쳐 두도록 하고 여기서는 Compiler가 지원하는 8가지 데이터타입에 대하여

 

알아보고 8가지 데이터타입을 가지고 변수를 선언해 보도록 하자.

 

기본 데이터타입을 분류해 보면 논리형, 문자형, 정수형, 실수형 으로 나누어 볼수 있다.

 

논리형, 문자형 데이터타입에는 한가지의 타입만 존재하지만 정수형과 실수형 데이터타입에는 여러 종류의 데이터타입이

 

존재하고 있다. 정수형은 byte, short, int, long 4가지의 데이터타입이 존재하며, 실수형은 float, double 2가지의

 

데이터타입이 존재하고 있다.

 

정수형과 실수형에 여러 종류의 데이터타입이 존재하기에 정수,실수형 변수를 선언하여 사용할 경우에는 표현하고자

 

하는 데이터의 범위를 확인후 그 데이터를 담을수 있는 데이터타입으로 선언해 주면 된다.

 

 

[출처] http://wagunblog.com/wp/

 

위에 사진에 보여지는 형태대로 우측에 있는 프리미티브 타입이 실제 값이 저장이 되는 데이터타입이고

 

좌측에 있는 레퍼런스 타입이 값이 저장되어 있는 곳의 주소를 저장하고 있는 데이터탑이다.

 

일단 여기서는 프리미티브 타입의 데이터타입만들 보도록 하자.

 

위에 설명에는 프리미티브 타입의 분류로 4가지가 있다고 설명했는데 그림에서 보면 정수, 부동소수점, 불리언 3가지로

 

분류되어 있는데 정수타입의 있는 'char'(문자형)이 우리가 데이터를 넣어 줄때는 문자형에 해당하는 데이터를 넣어주지만

 

실제 데이터가 저장되어 질때는 정수타입의 형태로 바뀌어 저장이 되기에 정수타입에 위치해 있다.

 

자, 다시 위에 있는 저 데이터 타입을 이용하여 변수를 선언하고 초기화를 해보록 하자.

 

/* 논리형 */

boolean bool; //선언

bool = false; //초기화

 

/* 문자형 */

char ch;

ch = 'A';

 

/* 정수형 */

byte b;

b = 10;

 

short s;

s = 20;

 

int i;

i = 30;

 

long lo;

lo = 40L;

 

/* 부동소수점(실수형) */

float f = 3.14F;

 

double d = 3.14;

위에 보이는 것과 같이 변수를 선언하고 초기화하는 코드를 작성해 보았다. 변수를 선언해서 사용할 경우에 주의할 점은

 

자바에서는 대,소문자를 정확하게 구분해서 사용해야 되기 때문에 데이터타입명을 소문자로 정확하게 작성을 해야한다.

 

또한, 동일한 이름의 변수를 선언할 경우에는 에러가 발생하니 주의해야한다. 변수의 이름을 작성할 때에는 무슨 데이터가

 

들어 있는지 유추할 수 있도록 작성해 주는게 좋다. 그래야 코드가 길어지더라도 이름만 보고 충분히 알아 차릴수 있기

 

때문이다. 예로 학생의 성적 점수 합계를 저장하는 변수를 선언한다고 가정하면

 

 int totalSum;

 

이런 형태의 전체합계 점수라는게 유추될 수 있도록 작성해 주는게 좋다.