> For the complete documentation index, see [llms.txt](https://develop-footprint.gitbook.io/o/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://develop-footprint.gitbook.io/o/java/effective-java/9/item-57.md).

# item 57) 지역 변수의 범위를 최소화하라

> 지역 변수의 유효 범위를 최소화하면, 코드 가독성과 유지보수성이 높아지고 오류 가능성은 낮아진다.

## 지역변수 범위 최소화 방법

* 지역 변수는 가장 처음에 쓰일 때 선언하여 지역변수의 범위를 줄일 수 있다.
  * 실제 사용되는 블록 바깥에 선언된 지역변수는 그 블록이 끝나더라도 살아남아 실수로 사용될 수 있다.
* 지역변수는 선언과 동시에 초기화해야 한다.
  * 단 try-catch문은 외부에서 초기화 시 예외가 발생한다면 메서드단으로 예외가 전파될 수 있다. 따라서 **블록 내부에서 초기화**해 예외 처리가 가능하도록 해야 한다.
* 반복 변수의 값을 반복문이 종료된 뒤에도 사용하는 경우가 아니라면, while문보다는 for문을 사용하는 것이 좋다.
  * for문의 경우 변수명을 블록 내부에서만 유지하는 반면 while문은 변수명을 블록 외부에서 선언해 유지하기 때문이다.
* 메서드를 작게 유지하고 한 가지 기능에 집중하면, 다른 기능을 사용할 경우 서로의 지역 변수에 접근할 가능성이 줄어든다.
