Mesurer la taille d'un objet en Java
En Java, déterminer la consommation de mémoire d'un objet n'est pas aussi simple que dans des langages comme C/C où la fonction sizeof() peut être utilisée. Cependant, il existe une approche alternative utilisant le package java.lang.instrumentation.
Ce package fournit une méthode polyvalente pour obtenir une approximation spécifique à l'implémentation de la taille d'un objet, y compris toute surcharge associée :
<code class="java">import java.lang.instrument.Instrumentation; public class ObjectSizeFetcher { private static Instrumentation instrumentation; public static void premain(String args, Instrumentation inst) { instrumentation = inst; } public static long getObjectSize(Object o) { return instrumentation.getObjectSize(o); } }</code>
Pour utiliser cette fonctionnalité, appelez simplement getObjectSize() comme ceci :
<code class="java">public class C { private int x; private int y; public static void main(String[] args) { System.out.println(ObjectSizeFetcher.getObjectSize(new C())); } }</code>
Cette approche offre un moyen robuste d'estimer la consommation de mémoire des objets Java, permettant aux développeurs d'analyser et d'optimiser efficacement les structures de données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!