La JVM, ou Java Virtual Machine, est une plateforme qui permet l'exécution de programmes Java. Elle assure la portabilité des applications en offrant un environnement d'exécution qui ne dépend pas de l'architecture matérielle spécifique. La gestion de la mémoire est l'une de ses fonctions clés. La JVM alloue de la mémoire pour les objets créés par un programme et s'assure de la libérer une fois qu'ils ne sont plus nécessaires. Le processus de 'garbage collection' intervient ici : il détecte les objets qui ne sont plus référencés ou utilisés par l'application, permettant de récupérer l'espace mémoire qu'ils occupaient pour le réattribuer, optimisant ainsi les ressources du système. Cette gestion automatique simplifie le développement en Java, puisque le programmeur n'a pas à se préoccuper de l'allocation et de la libération explicite de la mémoire, des tâches qui sont sources potentielles d'erreurs, telles que les fuites de mémoire, dans des langages sans garbage collection automatique.