오늘 포스트에서는 GC, 가비지 컬렉터에 대해서 설명해보겠습니다. GC란?더이상 사용되지 않는 객체를 자동으로 찾아 메모리(Heap)를 회수하는 JVM의 기능입니다.개발자가 free()를 직접 호출하지 않아도 되는 이유이기도 합니다. GC Root에서 시작해서 참조를 따라가며 도달 가능한 객체는 살려두고그 어디에서도 도달할 수 없는 객체는 가비지(회수 대상) 대상GC Root 예시실행 중인 스레드의 스택(지역변수/파라미터)static 필드JNI 참조 등 GC의 대표적 동작Mark(표시): 살아있는 객체 표시Sweep(청소): 표시되지 않은(죽은) 객체 제거Compact(압축): 메모리 단편화를 줄이기 위해 객체를 당겨 정리 finalize() 수동 호출의 단점finalize()는 GC가 객체를 정리하기 ..