プログラムの実行時にデータを格納するための五つの異なる場所があります
1.登録します。
これは、プロセッサの内部に配置されている最速の記憶領域です。しかし、それは非常に限られた数ですので、割り当てYaoanの需要を登録します。人間の制御を指示していません。
2.スタックメモリ。
これは、ランダムアクセスメモリ(RAM)に常駐し、。プロセッサのスタックポインタから直接得ることができます。スタックは、新しいメモリを割り当て、下方に移動します
Mobileは、そのメモリを解放することです。これは登録するために、メモリを割り当てるための効率的な方法です。しかし、あなたはJavaスタック・ストレージ・システムを作成するときに、すべてを知っている必要があります
ライフサイクルは、ポインタを移動するには、上下となっています。これは、プログラムの柔軟性を制限します。したがって、Javaへの参照は、オブジェクトが格納されていない、請求項オブジェクトを、存在します。
3.ヒープメモリ。
また、すべてのJavaオブジェクトを格納するために、RAM上に配置されています。これは、スタックとスタックは、コンパイラはヒープのライフサイクルに格納されたデータを知る必要がないという点で異なります。故に
ヒープ割り当てられたストレージは、多くの柔軟性を持っています。欠点は、ストレージヒープとスタックメモリ上に確保し、クリーンアップ多くの時間を費やすよりも、クリーンアップです。
4.定数が格納されています。
定数の値は、通常のJavaコードの中に直接配置されている、彼らは変更されることがないので、そうしても安全です。時には、組み込みシステムでは、一定の
分離自体の他の部分は、この場合に、ROM(Read Only Memory)に記憶されていてもよいです。
5.非RAMメモリ。
データが外部プログラムに完全に生きている場合は、任意のプログラムによって制御することができない、そして、それはまた、実行されていないプログラムで存在することができます。二つの例は、ストリームオブジェクトです
そして永続オブジェクト。ストリームオブジェクトでは、オブジェクトは、バイトストリームに変換されます。永続オブジェクトストアは、ディスク上のオブジェクト。そのため、プログラムが終了した場合でも、彼らは自分を維持することができます
状態。
Javaのは、データストレージには、5つのタイプに分かれています。ほとんどの話の実用化は、ヒープとスタックです。要約すると、スタックの類似点と相違点を理解します。