프로그래밍/JAVA

Garbage Collector 란?

Cognivox 2025. 4. 11. 12:15
반응형

🗑️ 갈비지 컬렉터(Garbage Collector)란?

자바에서 "더 이상 쓰지 않는 메모리(객체)"를 자동으로 찾아서 지워주는 청소부야!


📦 쉽게 말해보자

🎯 예시 상황:

  • 너가 방에서 장난감을 꺼내 쓰고 있었어.
  • 근데 이제 안 쓰는 장난감이 바닥에 굴러다녀…
  • ❗ 이걸 너 대신 자동으로 치워주는 로봇 청소기가 바로 갈비지 컬렉터야!

🧠 왜 필요할까?

이유설명
자바는 직접 메모리 해제를 하지 않음 C언어와 달리 free() 같은 함수가 없음
메모리 누수를 막기 위해 사용하지 않는 객체가 계속 남아있으면 메모리 부족 💥
자동으로 청소해줌 개발자가 실수로 잊지 않아도 됨 👍

🔧 어떤 객체가 지워질까?

"아무도 참조(사용)하지 않는 객체"

예:


⚙️ 언제 작동할까?

  • 자동으로!
  • JVM(Java Virtual Machine)이 메모리 부족을 느끼면
    👉 갈비지 컬렉터가 실행됨

🚫 직접 삭제할 수는 없을까?

❌ 안 됨.
하지만 힌트를 줄 수는 있어:


✅ 요약

항목설명
역할 사용하지 않는 객체를 메모리에서 제거
장점 메모리 관리 자동화 → 실수 줄어듦
동작 시점 JVM이 판단해서 자동 실행
직접 제어 가능? ❌ 직접 삭제는 불가능 (요청만 가능)

#갈비지컬렉터 #GarbageCollector #GC #자바메모리관리 #자바GC #JVM #자바기초 #메모리해제 #자바자동메모리 #객체소멸 #자바공부 #코딩기초 #개발자기초 #JavaMemory #GC동작원리 #GC자동청소 #JVM구조 #자바초보 #메모리누수방지 #Systemgc

반응형

'프로그래밍 > JAVA' 카테고리의 다른 글

"스택" 구조  (0) 2025.04.11
컨스트럭터(Constructor)란?  (0) 2025.04.11
java "생성자"  (0) 2025.04.11
java 팩토리 패턴  (0) 2025.04.11
자바의 객체지향이란?  (2) 2025.04.11