Maison >Java >javaDidacticiel >Comment mesurer la taille des objets en Java ?

Comment mesurer la taille des objets en Java ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-17 10:16:03201parcourir

How to Measure the Size of Objects in Java?

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn