피드로 돌아가기
Global Variable VS Local Variable
Dev.toDev.to
Backend

Java 변수 스코프 완벽 정리, Class-level과 Local의 메모리 전략 차이

Global Variable VS Local Variable

Divya Divya2026년 4월 6일1beginner

Context

Java는 언어 특성상 완전한 전역 변수를 지원하지 않는 구조. 변수 선언 위치에 따라 접근 범위와 생명주기가 결정되는 메모리 관리 체계. 효율적인 프로그램 작성을 위해 스코프에 따른 변수 선택이 필수적인 상황.

Technical Solution

  • 클래스 내부이자 메서드 외부에서 선언하는 Class-level 변수 활용 전략
  • 모든 객체가 공유하는 Static 변수를 통해 메모리 효율성과 데이터 일관성 유지
  • 객체마다 개별 복사본을 가지는 Instance 변수로 개별 상태 관리
  • 메서드, 생성자, 블록 내부에서만 유효한 Local 변수로 캡슐화 구현
  • 메서드 시작 시 메모리를 할당하고 종료 시 즉시 소멸시키는 Local 변수의 생명주기 제어
  • Local 변수 사용 전 반드시 초기화가 필요한 엄격한 컴파일 규칙 적용

Key Takeaway

변수의 생명주기와 접근 범위를 최소화하여 메모리 낭비를 방지하고 데이터 무결성을 확보하는 설계 원칙.


상태 공유가 필요 없는 데이터는 반드시 Local 변수로 선언하여 메모리 점유 시간을 최소화할 것

원문 읽기