首頁 >Java >java教程 >淺析Java的記憶體分配

淺析Java的記憶體分配

怪我咯
怪我咯原創
2017-06-26 11:34:241089瀏覽

Java的記憶體分配上,主要分4個區塊!
一塊是用來裝程式碼的,就是編譯的東西。
一塊是用來裝靜態變數的,例如用static關鍵字的變量,例如字串常數。
一塊是stack,也就是棧,是用來裝變數和參考型別的!但差別在於,裝了變數以後,變數上是有值的,而引用型別本身在stack上是沒有值的。
一塊是heap,也就是堆!堆可以一句話概括,裝new出來的東西!

所以綜上所述,基本資料型別都在stack中,而引用型,變數是放在stack中,真正有內容的東西放在heap中,也就是當new了一個新的引用類型,他就會放在堆中,同時棧中的引用類型變數會指向堆中你new出來的東西!
兩種資料型態:

1)基本資料型別
整數型別(byte/short/int/long)
浮點數型別(float/double)
字元型別( char)
布林類型(boolean)
2)引用型別:類別/介面/陣列
另外附上2點筆記:
1.初始化java陣列的兩種方式:
靜態(給定元素)和動態(給定長度)
2.java數組的靜態特性:
java數組(物件)初始化之後,數組長度不可變;數組物件是創建數組時記憶體分配的一塊空間;

初始化:為陣列元素分配記憶體空間,並為每個元素指定初始值;

以上是淺析Java的記憶體分配的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn