JAVA

[JAVA] 변수(지역 변수,멤버 변수)와 스코프

준몽쓰 2024. 12. 25. 23:53

변수 선언한 위치에 따라 지역 변수, 멤버 변수(클래스 변수, 인스턴스 변수)로 분류한다.

 

지역 변수

  • 특정 지역에서만 사용할 수 있는 변수이며 특정 지역에서 벗어나면 사용할 수 없다.
  • 선언된 코드 블록 {} 안에서만 사용 가능하고 선언되지 않은 코드 블록{} 에선 사용할 수 없다.
  • 선언된 코드 블록을 벗어나면 없어짐.
  • 메서드에 선언

 

지역 변수 예시

student1, student2는 지역 변수이다.

 

멤버 변수

  • 클래스 영역에서 선언된 변수
  • static이 붙으면 클래스 멤버 변수,  static이 붙지 않으면 인스턴스 멤버 변수
  • 멤버 변수는 클래스 멤버 와 인스턴스 멤버를 통틀어 말함
  • 필드, 클래스 변수, 속성 변수라고 불림

멤버 변수 예시

 

변수의 값 초기화

 ■ 멤버 변수 : 자동 초기화

 - 숫자 (int) = 0. boolean = false, 참조형 = null (null 값은 참조할 대상이 없다는 뜻으로 사용)

 

■ 지역 변수 : 수동 초기화

 - 지역 변수는 항상 직접 초기화해야 한다.

 

 

스코프

  • 변수가 접근 가능한 범위

위 예제에서 int x는 main {} 전체에서 접근할 수 있기 때문에 스코프가 넓고, int b는 ifn{} 코드 블록 안에서만 접근할 수 있기 때문에 스코프가 짧다.