이펙티브 자바를 읽다가 약한참조에 대한 이야기가 나와서 포스팅한다. 참조에는 아래 4가지가 존재한다. Strong References (강한 참조) Soft References (소프트 참조) Weak References (약한 참조) Phantom References (팬텀 참조) 이 해당 참조 유형에 따라 GC 실행 대상여부, 시점이 달라진다. 강한참조 new 연산자를 사용하여 객체를 인스턴스화 하고 참조하는 방식. 참조가 해제되지 않으면 GC의 대상이 되지 않는다. Test test = new Test(); 해당 test라는 변수가 참조를 가지고 있다면 GC의 대상이 되지 않는다. test = null이 되는 순간 GC의 대상이 된다. 소프트참조 대상 객체의 참조가 SoftReference만 있다면..