ScopeTest 블록 밖에 ScopeTest2라는 메서드를 하나 더 선언했습니다. 이 메서드의 매개변수로는 int형 value2를 사용하겠습니다. ScopeTest 메서드에서 사용한 변수들을 ScopeTest2 메서드에서도 사용할 수 있는지 테스트하니, globalScope는 에러가 발생하지 않습니다. 그런데 localScope나 value 변수는 사용할 수 없다고 컴파일 에러가 발생합니다. 이것이 변수의 사용 범위(scope)입니다. 변수를 선언한 블록에 포함되지 않았기 때문에 ScopeTest2에서는 이 변수들을 사용할 수 없는 거죠.
그림 30-1 | 컴파일 에러