對於java中的變數問題

來源:互聯網
上載者:User

標籤:www   com   欄位   baidu   ext   成員方法   類型   靜態   作用   

基本類型的變數如果是臨時變數,只要定義了,就會分配記憶體空間,不管是否被賦值;如果是作為對象的屬性出現,只要該對象不執行個體化,就不會分配記憶體空間。

一個完整的Java程式運行過程會涉及以下記憶體地區:
1、寄存器:JVM內部虛擬寄存器,存取速度非常快,程式不可控制。
2、 棧:儲存局部變數的值,包括:
1)用來儲存基礎資料型別 (Elementary Data Type)的值;
2)儲存類的執行個體,即堆區對象的引用(指標)
3)也可以用來儲存載入方法時的幀
3、堆:用來存放動態產生的資料,比如new出來的對象。注意建立出來的對象只包含屬於各自的成員變數,並不包括成員方法。因為同一個類的對象擁有各自的成員變數,
儲存在各自的堆中,但是他們共用該類的方法,並不是每建立一個對象就把成員方法複製一次。

4、常量池:JVM為每個已載入的類型維護一個常量池,常量池就是這個類型用到的常量的一個有序集合。
包括直接常量(基本類型,String)和對其他類型、方法、欄位的符號引用(1)。池中的資料和數組一樣通過索引訪問。
由於常量池包含了一個類型所有的對其他類型、方法、欄位的符號引用,所以常量池在Java的動態連結中起了核心作用。常量池存在於堆中。

5、程式碼片段:用來存放從硬碟上讀取的來源程式代碼。
6、資料區段:用來存放static定義的靜態成員。

對於java中的變數問題

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.