java:栈空间,堆空间,方法区
生活随笔
收集整理的這篇文章主要介紹了
java:栈空间,堆空间,方法区
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
棧空間:
1. 棧是方法執行的內存模型,用棧存儲方法執行的信息是再合適不過了。每個方法被調用都會創建一個棧幀(存儲局部變量,操作數,方法出口等)。
2. JVM為每一個線程創建一個棧,用于存放該線程執行方法的信息。
3. 棧屬于線程私有,不能實現線程間的共享!
?4. 棧的存儲特性是“先進后出,后進先出”
?5. 棧是由系統自動分配,速度快!棧是一塊連續的內存空間。
?
? 棧主要是用來存放對象的,主要是用來執行程序的。相對于堆,棧的存取速度更快,但棧的大小和生存期必須是確定的,因此缺乏一定的靈活性。
? 而堆卻可以在運行時動態的分配內存,生存期不用提前告訴編譯器,但這也導致了其存取速度的緩慢。
?
堆空間
?
方法區?
總結
以上是生活随笔為你收集整理的java:栈空间,堆空间,方法区的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java结构图
- 下一篇: java:垃圾回收机制(Garbage