- 변수의 종류를 결정 짓는 중요한 요소는 '변수 선언 위치'임.


- 인스턴스 변수(instance variable)
- 인스턴스를 생성할 때 만들어지므로, 인스턴스 변수(iv)의 값을 읽어 오거나 저장하려면 먼저 인스턴스를 생성해야 함.
- 인스턴스마다 별도의 저장공간을 가지므로, 서로 다른 값을 가질 수 있음.
- 클래스 변수(class variable)
- 클래스 변수를 선언하는 방법은 인스턴스 변수(iv)앞에 static을 붙이면 됨.
- 인스턴스마다 독립적인 저장공간을 갖는 인스턴스 변수와는 달리, 클래스 변수는 모든 인스턴스가 공통된 저장공간(변수)을 공유하게 됨.
- 클래스 변수는 언제라도 바료 사용할 수 있다는 특징이 있으며,
'클래스 이름.클래스 변수'와 같은 형식으로 사용함.
- 지역변수(local variable)
- 메서드 내에 선언되어 메서드 내에서만 사용 가능, 메서드가 종료되면 소멸되어 사용할 수 없음.
- for문 또는 while문의 블럭 내에 선언된 지역변수는, 지역변수가 선언된 {블럭}내에서만 사용 가능하며, 블럭을 벗어나면 소멸되어 사용할 수 없게 됨.
참고문헌
남궁 성, Java의정석(기초편), 도우출판