La JVM gère automatiquement la mémoire — en allouant des objets et en libérant les objets inaccessibles via le garbage collection (GC) — vous n'avez donc pas besoin de libérer manuellement la mémoire. Comprendre les régions mémoire et le comportement du GC est essentiel pour optimiser les performances et diagnostiquer les problèmes mémoire.
Pourquoi c'est important
HEAP — where all OBJECTS live (shared across threads), GC operates here
├── Young Generation — new objects (most die young)
│ ├── Eden — new allocations go here
│ └── Survivor — objects that survived a young GC
└── Old (Tenured) Gen — long-lived objects (promoted from young)
STACK — per-thread; method frames, local variables, primitive locals, references
Metaspace — class metadata (replaced PermGen in Java 8+)
