Rumah  >  Artikel  >  Java  >  Bagaimana untuk Menentukan Saiz Objek di Jawa?

Bagaimana untuk Menentukan Saiz Objek di Jawa?

Linda Hamilton
Linda Hamiltonasal
2024-11-04 20:15:02777semak imbas

How to Determine the Size of Objects in Java?

Mencari Saiz Objek dalam Java

Di Jawa, persoalan untuk menentukan jejak ingatan sesuatu objek sering timbul apabila membandingkan struktur data . Walau bagaimanapun, tidak seperti C/C dengan kaedah sizeOf(), Java tidak mempunyai kaedah yang jelas untuk tujuan ini.

Penyelesaian: Menggunakan java.lang.instrumentation

Kekurangan kaedah terbina dalam Java memerlukan pendekatan alternatif. Satu penyelesaian yang sesuai ialah memanfaatkan pakej java.lang.instrumentation. Pakej ini menyediakan kaedah yang menyampaikan anggaran khusus pelaksanaan bagi saiz objek, bersama-sama dengan sebarang overhed yang berkaitan.

Contoh Kod:

Coretan kod berikut menunjukkan penggunaan pakej java.lang.instrumentation untuk mendapatkan semula saiz objek:

<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>

Untuk menentukan saiz objek, hanya gunakan kaedah getObjectSize:

<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>

Atas ialah kandungan terperinci Bagaimana untuk Menentukan Saiz Objek di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn