JVM 堆和棧的區別



 
棧內存:
 
  • 程序在棧內存中運行
 
  • 棧中存的是基本數據類型和堆中對象的引用
 
  • 棧是運行時的單元
 
  • 棧解決程序的運行問題,即程序如何執行,或者說如何處理數據
 
  • 一個線程一個獨立的線程棧
 
 
堆內存:
 
  • 程序運行所需的大部分數據保存在棧內存中
 
  • 堆中存的是對象
 
  • 堆是存儲的單元,堆只是一塊共享的內存
 
  • 堆解決的是數據存儲的問題,即數據怎么放,放在哪兒
 
  • 所有線程共享堆內存
 
 
Java中的參數傳遞( 傳值呢?還是傳引用? ):
 
  • 程序運行永遠都是在棧中進行的,因而參數傳遞時,只存在傳遞基本類型和對象引用的問題,不會直接傳遞對象本身
 
 
 
 
參考資料:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM