GC 에는 reference counting, Mark & Sweep 방법이 있다,
reference counting : 참조값이 0 이면 삭제. 순환 참조경우에 해결 방법이 있음
Mark & Sweep : GC root에서 탐색해서 참조되지 않는 Heap의 객체들 삭제. GC root 에 포함될 수 있는 집합은 객체 생성할 때 사용된 변수(Stack 에 있는 객체 주소값)