자바에서의 자료형은 기본 자료형과 참조 자료형이 있는데, 스택 메모리만을 사용하는 기본 자료형은 작업이 모두 끝난 후, 스코프가 끝날때 함께 소멸되지만, 힙 메모리에 실제 값이 저장된 참조 자료형의 경우, 소멸 작업이 추가적으로 필요하다.
이때 힙 메모리에서 사용하지 않는 메모리에 대한 자원 할당 해제를 수행하는 것이 GC이다.
GC를 위해서는 모든 객체를 탐색하고, 사용 중인지 확인한 다음, 사용하지 않는 객체들에 대해 메모리 할당을 해제하고, 추가적인 작업을 수행한다.
하지만 모든 객체를 탐색하는 것부터 너무 비효율적이다.
따라서 가장 간단한 형태의 알고리즘은 접근 가능한 객체에 대해 순회하고, 남은 객체를 모두 할당해제하는 것이다.
따라서 객체 대부분이 아주 짧은 시간동안만 살아남는다는 약한 세대 가설에 기반한 새로운 알고리즘이 등장한다.