new演算子を使用して作成されたときに Java オブジェクトが割り当てられるサイズについて理解しようとしています。
クラスを作成していると考えてください
public class NewClass {
NewClass() { }
}
NewClass
usingのインスタンスを作成するときNewClass nc = new NewClass();
。NewClass
ヒープに作成されるのサイズは?
~ジェガン
new演算子を使用して作成されたときに Java オブジェクトが割り当てられるサイズについて理解しようとしています。
クラスを作成していると考えてください
public class NewClass {
NewClass() { }
}
NewClass
usingのインスタンスを作成するときNewClass nc = new NewClass();
。NewClass
ヒープに作成されるのサイズは?
~ジェガン
プロファイリングが最善の方法ですが、次のように適切な見積もりを得ることができます。
オブジェクトごとに 8 バイト (ベア オーバーヘッド) とフィールド。
最終結果は、最も近い 8 バイトの倍数に増加されます。
より複雑なオブジェクトのメモリ使用量を計算する方法については、こちらの例も参照してください。注: これらのルールは VM によって異なる場合があり、VM の新しいバージョンが登場すると変更される可能性があります。私の見積もりは Sun JVM にのみ適用されますが、IBM の結果も同様になると思います。
これを測定するには、プロファイラーを使用する必要があると思います。これには、 JProfilerまたはYourKitプロファイラーを使用できます。