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

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

DDD
Freigeben: 2024-11-05 07:07:01
Original
944 Leute haben es durchsucht

How to Determine the Size of an Object in Java?

Objektgröße in Java bestimmen

Trotz der Verbreitung der sizeOf()-Methode in Sprachen wie C/C fehlt in Java ein direktes Äquivalent zur Berechnung des Speicherbedarfs eines Objekts. In diesem Artikel werden alternative Ansätze untersucht, um diesem Bedarf gerecht zu werden.

Verwendung des Instrumentierungspakets

Die Java Instrumentation API stellt die Methode getObjectSize() bereit, die eine Annäherung an die spezifische Objektgröße bietet bis zu seiner Umsetzung. 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, geben Sie Folgendes in Ihrer Manifestdatei an:

<code class="xml"><instrumentation>
  <main class="ObjectSizeFetcher">
    <option name="tools" value="all"/>
  </main>
</instrumentation></code>
Nach dem Login kopieren

Rufen Sie in Ihrem Anwendungscode getObjectSize() wie folgt auf:

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

Das obige ist der detaillierte Inhalt vonWie bestimme ich die Größe eines Objekts in Java?. 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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage