그림 30-2 | 컴파일 에러
앗? 분명히 클래스 내에 있는데도 globalScope부터 모두 컴파일 에러가 발생합니다. 이 변수들은 왜 main 메서드에서 사용할 수 없을까요? 답은 static이라는 키워드에 있습니다.
클래스는 붕어빵 틀이라고 했었죠? 모든 클래스는 인스턴스화하지 않은 채로 사용할 수 없습니다. 붕어빵 틀이 붕어빵은 아닌 것과 같은 이치입니다.
main 메서드에는 static이라는 키워드가 붙어있습니다. 이 키워드가 지금까지 main 메서드를 정의할 때 new를 사용하지 않았는데도 실행된 비밀입니다. static이라는 키워드를 붙여주면 클래스를 인스턴스화하지 않아도 static한 메서드나 static한 변수를 사용할 수 있습니다.