Java를 사용하다보면 꽤나 많이 보게 되는 static !! 도대체 static이란 무엇일까?! Static Java에서 Static 키워드를 사용한다는 것은 메모리에 한번 할당되어 프로그램이 종료될 때 해제되는 것을 의미한다. 이 과정은 메모리 영역에 대한 이해가 필요한 부분이다. 보통 우리가 생성하는 Class는 static 영역에 생성이 되고, new 연산을 통해 생성한 객체는 Heap 영역에 생성이 된다. 이때 할당되는 Heap의 메모리는 GC를 통해 주기적으로 관리를 받게 된다. 하지만 Static를 통해 Static 영역에 할당되는 메모리는 모든 객체가 공유하는 메모리라는 장점이 있지만, GC의 영역 밖이기 때문에 Static을 자주 사용하다보면 프로그램 종료까지 메모리가 할당된 채로 존재하..