Language

Java 변수 선언과 초기화

괘창 2024. 6. 17. 22:09

■ 변수 선언과 초기화

변수를 선언하면 컴퓨터의 메모리 공간을 확보해서 데이터를 저장할 수 있다.
변수이 이름을 통해서 해당 메모리 공간에 접근이 가능하다.
데이터를 보관할 수 있는 공간을 만들고, 그 곳에 이름을 부여한다.

 

package variable;

public class Var4 {
    public static void main(String[] args) {
        int a;
        int b;
        
        int c,d;
    }
}

 


■ 변수 초기화

변수를 선언하고, 선안한 변수에 처음으로 값을 저장하는 것을 변수 초기화라 한다.

 

package variable;

public class Var5 {
    public static void main(String[] args) {
        //1. 변수 선언, 초기화 각각 따로
        int a;
        a = 1;
        System.out.println(a);

        int b = 2; //2. 변수 선언과 초기화를 한 번에 진행
        System.out.println(b);

        int c = 3, d= 4; //3. 여러 번수 선언과 초기화를 한 번에 진행
        System.out.println(c);
        System.out.println(d);
    }
}
  1. 변수의 선언과 초기화를 각각 따로 할 수 있다.
  2. 변수를 선언하면서 동시에 초기화를 할 수 있다.
    int b를 사용해서 변수 b를 만들고, 그 다음 바로 b = 2를 사용해서 변수 b에 값 2를 저장한다.
  3. 여러 변수를 선언하면서 초기화도 동시에 진행할 수 있다.

변수 초기화는 필수다.

변수를 초기화 하지 않고 사용하면 어떻게 될까?

 

package variable;

public class Var6 {
    public static void main(String[] args) {
        int a;
        //System.out.println(a);
    }
}

 

컴파일 에러가 발생한다.

 

 

# 에러 확인 후 해당 라인 전체에 주석이 필요하다.

   주석을 안하게 되면 해당 부분에 컴파일 오류가 발생할 수 있다.

오류가 발생하는 이유는 컴퓨터에서 메모리는 여러 시스템이 함께 사용하는 공간이다.

그래서 어떠한 값들이 계속 저장된다.

 

변수를 선언하면 메모리상의 어떤 공간을 차지하고 사용한다.

그런데 그 공간에는 기존에 어떤 값이 있었는지 아무도 모른다.

이에따라 초기화를 하지 않으면 이상한 값이 출력될 수 있으며, 이런 문제를 예방하기 위해

자바는 변수 초기화를 하도록 강제한다.

 

참고 : 현재 배우고 있는 변수는 지역 변수(Local Variable)라 하며,
지역 변수는 개발자가 직접 초기화를 해줘야 한다.
추후 클래스 변수와 인스턴스 변수는 자바가 자동으로 초기화를 진행해준다.

 

참고 : 컴파일 에러는 자바 문법에 맞지 않았을 때 발생하는 에러다.
컴파일 에러는 오류를 빠르고 명확하게 찾을 수 있기 때문에 좋은 에러다