解释内存中的栈、堆、静态区
生活随笔
收集整理的這篇文章主要介紹了
解释内存中的栈、堆、静态区
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
①通常我們定義一個(gè)基本數(shù)據(jù)類型的變量,一個(gè)對象的引用,還有就是方法調(diào)用的現(xiàn)場保存都使用內(nèi)存中的棧空間。
②通過new關(guān)鍵字和構(gòu)造器創(chuàng)建的對象都放在堆空間。
③程序中的字面量,比如直接寫的100、"hello world"和常量都放在靜態(tài)區(qū)。
④棧空間操作起來最快但是小,通常對象都是放在堆空間,理論上整個(gè)內(nèi)存沒有被其他進(jìn)程使用的空間甚至硬盤上的虛擬內(nèi)存都可以被當(dāng)成堆空間來使用。
⑤例如:
String str = new String("hello");上面的語句,變量str放在棧上,用new創(chuàng)建出來的字符串對象放在堆上,而"hello"這個(gè)字面量放在靜態(tài)區(qū)。
總結(jié)
以上是生活随笔為你收集整理的解释内存中的栈、堆、静态区的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 静态变量和实例变量的区别
- 下一篇: 一个栈输入序列为1,2,3,4,5,则下