Η JVM διαχειρίζεται αυτόματα τη μνήμη — κατανέμει αντικείμενα και ελευθερώνει μη προσβάσιμα μέσω garbage collection (GC) — ώστε δεν χρειάζεται να ελευθερώνετε τη μνήμη χειручαι. Η κατανόηση των περιοχών μνήμης και της συμπεριφοράς του GC είναι ζωτικής σημασίας για τη βελτιστοποίηση της απόδοσης και τη διάγνωση προβλημάτων μνήμης.
Περιοχές μνήμης JVM
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+)
