Heim > Java > javaLernprogramm > Wie kann ich die Größe eines Objekts in Java bestimmen?

Wie kann ich die Größe eines Objekts in Java bestimmen?

Linda Hamilton
Freigeben: 2024-11-05 02:30:02
Original
332 Leute haben es durchsucht

How Can I Determine the Size of an Object in Java?

Bestimmen der Objektgröße in Java

In Java kann die Bestimmung der Größe eines Objekts im Speicher eine Herausforderung sein, da es keine direkt vergleichbare Methode gibt zu C/Cs sizeOf(). Das java.lang.instrumentation-Paket bietet jedoch einen alternativen Ansatz.

Lösung mit java.lang.instrumentation

Das Instrumentation-Paket enthält eine Methode, die eine Annäherung an liefert die Größe des Objekts. Hier ist ein Beispiel für die Verwendung:

<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>
Nach dem Login kopieren

Um diese Methode zu verwenden, rufen Sie einfach getObjectSize() mit dem gewünschten Objekt auf:

<code class="java">System.out.println(ObjectSizeFetcher.getObjectSize(new C()));</code>
Nach dem Login kopieren

Fazit

Mit dem Paket java.lang.instrumentation ist es möglich, eine ungefähre Größe eines Objekts in Java zu ermitteln, was Vergleiche von Datenstrukturgrößen oder andere speicherbezogene Optimierungen ermöglicht.

Das obige ist der detaillierte Inhalt vonWie kann ich die Größe eines Objekts in Java bestimmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage