전역 변수 VS 지역 변수
발행: (2026년 4월 6일 PM 08:20 GMT+9)
2 분 소요
원문: Dev.to
Source: Dev.to
Java의 전역 변수
Java는 진정한 전역 변수를 지원하지 않습니다. 대신 클래스‑레벨 변수를 사용하며, 동작은 비슷합니다.
클래스‑레벨 변수의 종류
- 정적 변수 (Static Variable) → 모든 객체가 공유
- 인스턴스 변수 (Instance Variable) → 각 객체마다 별도 복사본
예시
class Test {
static int x = 10; // 클래스‑레벨 (전역‑유사)
public static void main(String[] args) {
System.out.println(x);
}
}
출력

Java의 지역 변수
지역 변수는 메서드, 생성자, 혹은 블록 내부에 선언되며 해당 범위 내에서만 사용할 수 있습니다.
예시
class Test {
public static void main(String[] args) {
int y = 5; // 지역 변수
System.out.println(y);
}
}
출력

지역 변수의 주요 특징
- 메서드나 블록 내부에 선언됨
- 해당 메서드/블록 내에서만 접근 가능
- 메서드가 시작될 때 메모리가 할당되고 종료될 때 해제됨
- 사용하기 전에 반드시 초기화해야 함