首页 >Java >java教程 >Java中如何确定对象的大小?

Java中如何确定对象的大小?

Linda Hamilton
Linda Hamilton原创
2024-11-04 20:15:02836浏览

How to Determine the Size of Objects in Java?

在 Java 中查找对象的大小

在 Java 中,在比较数据结构时经常出现确定对象内存占用的问题。然而,与 C/C 的 sizeOf() 方法不同,Java 缺乏用于此目的的显式方法。

解决方案:利用 java.lang.instrumentation

缺乏Java 中的内置方法需要一种替代方法。一种合适的解决方案是利用 java.lang.instrumentation 包。此包提供了一种方法,可以提供对象大小的特定于实现的近似值以及任何相关的开销。

代码示例:

以下代码片段演示了使用 java.lang.instrumentation 包检索对象大小:

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

要确定对象的大小,只需使用 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>

以上是Java中如何确定对象的大小?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn