この質問に出くわして、どういうことが本当ですか?これらの変数のすべてがスペースの同じ量を取る、JavaパースペクティブからJavaメモリの使用方法 - 同じ領域を持つ
int num = 14;
int num2 = 3242424324;
String place = "Gilbert, Arizona";
String txt = null;
: 次のコードスニペットを考えてみましょう。どうしてこれなの? 私はすべてが同じスペースを取ることを消化することができません。
この質問に出くわして、どういうことが本当ですか?これらの変数のすべてがスペースの同じ量を取る、JavaパースペクティブからJavaメモリの使用方法 - 同じ領域を持つ
int num = 14;
int num2 = 3242424324;
String place = "Gilbert, Arizona";
String txt = null;
: 次のコードスニペットを考えてみましょう。どうしてこれなの? 私はすべてが同じスペースを取ることを消化することができません。
正確にはありません。 place
は、int
より大きい可能性のあるヒープ上のオブジェクトへの参照のですが、参照自体はまだちょうど4バイトで、int
と同じです。オブジェクト全体を見渡すと、メモリ消費量が増えます。
すべての参照は、その型が何であっても同じサイズです。
オブジェクトがヒープ上にあり、名前を持たないことがわかります。したがって、参照以外のオブジェクトにアクセスする方法はありません。また、オブジェクトはすべて異なる形状とサイズで来るので、さまざまな量のメモリを消費します。
「Javaの観点からは、これらの変数はすべて同じ容量を占めます」 - これはどこで分かったのですか? – kosa