본문 바로가기

Java

[Java 강좌] 2장. 변수(1)


변수란?


변수(variable)이란, 값을 저장할 수 있는 메모리상의 공간을 의미한다.

변수에는 단 하나의 값을 저장할 수 있다. 그래서 여러 번 값을 저장하면 마지막 값이 저장된다.


변수란, 단하나의 값을 저장할 수 있는 공간이다



변수를 선언해보자.


변수타입  변수이름;

int number;  // 정수형 변수 number를 선언한다

number = 10; // 변수 number 에 10 저장


int a, b; // 이와 같이 여러개를 (,) 로 구분하여 간결하게 선언 가능하다.


위와 같이 변수타입과 이름을 같이 써주게 되면, 그 변수타입(변수에 담을 종류와 범위)에 맞는 크기의 저장공간이 메모리상에 확보된다.


변수의 이름, 메서드의 이름, 클래스의 이름 등 반드시 지켜야할 규칙이 존재한다.


1. 대소문자가 구분되며 길이에 제한이 없다.


2. 예약어를 사용해서는 안 된다.


3. 숫자로 시작해서는 안 된다.


4. 특수문자는 '_'와 '$'만 허용한다.



자바로 프로그램을 작성할 때 권장하는 규칙도 존재한다.


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


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


3. 상수의 이름은 모두 대문자로 한다. 여러 단어로 이루어진 경우 '_'로 구분



위와 같은 규칙이 잘 지켜져야 서로간의 불편함이 없으니 꼭 명심하도록 하자.


변수의 타입



모든 변수에는 변수의  타입(type 또는 형)이 존재하며 각각 변수타입에 따라 저장 값의 종류와 범위가 달라진다.


변수의 타입은 기본형과 참조형으로 나뉜다.

자바에서는 C언어와 다르게 참조형 변수 간의 연산을 할 수 없으므로, 실제 연산에 사용되는 것은 모두 기본형이다.


기본형은 boolean, char, byte, short, int , long, float, double 과 같이 계산을 위한 실제 값을 저장할 수있고

참조형은 위 8개를 제외한 나머지 타입이다. 객체의 주소를 저장한다.


예를 들면,


클래스이름  변수명;   

Car  sm5;


참조형 변수(참조변수)는 위와 같이 프로그래머가 직접 만들어 추가할 수 있으므로 딱히 갯수가 정해져 있지 않는다.

Car 라는 클래스가 타입이 되고 sm5 가 참조변수가 된다.


Car sm5 = null ; 이거나 Car sm5=new Car(); 와 같이 초기화를 해줄 수 있는데

new Car(); 의 의미는, 클래스 Car의 새로운 객체를 만들고 그 주소를 sm5에 '='로 저장해준다고 보면 된다.



변수의 기본형을 자세히 알아보도록 하자.


기본형은 크게 논리형, 문자형, 정수형, 실수형으로 구분할 수 있다.


    • 논리형은 True와 False(참과 거짓)의 값을 말하며,
    • 문자형은 한마디로 우리가 쓰는 문자인 값을 말한다.
    • 정수형은 정수 값을 실수형은 실수값을 저장한다.


더 자세히 알아보자.


기본형의 종류와 크기

 논리형

boolean
1byte

 

 

 

 문자형 

 

char
2byte

 

 

 정수형

byte
1byte

short
2byte

int
4byte

long
8byte

 실수형

 

 

float
4byte

double
8byte



변수의 기본값과 범위


자료형

설명 

기본값 

크기(byte)

저장 가능한 값의 범위 

boolean

true와 false중 하나저장 

false

1

false,true 

 char

유니코드(Unicode) 한문자저장 

'\u0000'

2

 \u0000~\uffff (0~65,535)

byte 

정수값을 저장 

0

1

 -128~127

short 

0

2

 -32,768~32,767

 int

0

4

-2,147,483,648~2,147,483,647 

 long

0L

8

 -9223372036854775808~9223372036854775807

 float

실수값을 부동소수점으로 저장 

0.0f

4

1.4E-45~3.4028235E38 

double 

0.0d

8

 4.9E-324~1.7976931348623157E308

 참조형

 객체의 주소를 저장

null

 

0x0~0xffffffff 



각각에 대해서는 변수(2)에서 설명하도록 하겠다.


이 글은 "Java의 정석(남궁 성)" 책을 리뷰하고 다시 정리하는 글임을 알려드립니다.

자세한 내용은 책을 참고바랍니다


references : http://sexy.pe.kr/tc/236


'Java' 카테고리의 다른 글

[Java 강좌] 2장. 변수(2)  (4) 2013.08.14
[Java 강좌] 1장. About Java  (1) 2013.06.17
[Java] Class 와 ArrayList 사용예제  (0) 2013.06.13