java 棧和堆區(qū)別詳細(xì)介紹
java 棧和堆區(qū)別
1, 垃圾回收機(jī)制僅僅作用于堆內(nèi)存,與棧內(nèi)存無(wú)關(guān);
2, 棧:stack 棧的存取速度比堆快,效率高 保存局部變量和對(duì)象的引用值
3, 堆:保存較大的變量
4, 棧有一個(gè)很重要的特殊性,就是存在棧中的數(shù)據(jù)可以共享
編譯器處理int a = 3 時(shí),首先會(huì)在棧中創(chuàng)建一個(gè)變量為a的引用,然后查找棧中是否存在3這個(gè)值,如果不存在,就將3存放進(jìn)來(lái);
處理b = 3時(shí),也是這樣,因?yàn)橹皩?存放進(jìn)來(lái)了,所以此時(shí)編譯器只需將創(chuàng)建b這個(gè)變量再指向3就行了(有利于節(jié)省空間)。
這個(gè)時(shí)候就出現(xiàn)a和b同時(shí)指向3的情況,但不影響他們的使用。如果此時(shí)又定義a = 4;,則需將4存放進(jìn)內(nèi)存,由a指向4,a值的修改不會(huì)影響到b值。
內(nèi)存的劃分: 1,寄存器。 2,本地方法區(qū)。 3,方法區(qū)。 4,棧內(nèi)存。 存儲(chǔ)的都是局部變量。 而且變量所屬的作用域一旦結(jié)束,該變量就自動(dòng)釋放。 5,堆內(nèi)存。 存儲(chǔ)是數(shù)組和對(duì)象(其實(shí)數(shù)組就是對(duì)象) 凡是new建立在堆中。 特點(diǎn): 1,每一個(gè)實(shí)體都有首地址值。 2,堆內(nèi)存中的每一個(gè)變量都有默認(rèn)初始化值,根據(jù)類型的不同而不同。整數(shù)是0,小數(shù)0.0或者0.0f,boolean false char '\u0000' 3,垃圾回收機(jī)制。
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
Spring Boot使用AOP在指定方法執(zhí)行完后執(zhí)行異步處理操作
這篇文章主要介紹了Spring Boot使用AOP在指定方法執(zhí)行完后執(zhí)行異步處理操作,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2024-06-06詳解Java并發(fā)編程基礎(chǔ)之volatile
volatile作為Java多線程中輕量級(jí)的同步措施,保證了多線程環(huán)境中“共享變量”的可見性。這里的可見性簡(jiǎn)單而言可以理解為當(dāng)一個(gè)線程修改了一個(gè)共享變量的時(shí)候,另外的線程能夠讀到這個(gè)修改的值。本文將詳解介紹Java并發(fā)編程基礎(chǔ)之volatile2021-06-06MyBatisPlus-QueryWrapper多條件查詢及修改方式
這篇文章主要介紹了MyBatisPlus-QueryWrapper多條件查詢及修改方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06java基于Apache FTP點(diǎn)斷續(xù)傳的文件上傳和下載
本篇文章主要介紹了java基于Apache FTP點(diǎn)斷續(xù)傳的文件上傳和下載,利用FTP實(shí)現(xiàn)文件的上傳和下載,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2016-11-11如何解決通過(guò)spring-boot-maven-plugin package失敗問(wèn)題
這篇文章主要介紹了如何解決通過(guò)spring-boot-maven-plugin package失敗問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04通過(guò)代碼示例了解submit與execute的區(qū)別
這篇文章主要介紹了通過(guò)代碼示例了解submit與execute的區(qū)別,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09Java?FTP協(xié)議實(shí)現(xiàn)文件下載功能
FTP(File?Transfer?Protocol)就是文件傳輸協(xié)議。通過(guò)FTP客戶端從遠(yuǎn)程FTP服務(wù)器上拷貝文件到本地計(jì)算機(jī)稱為下載,將本地計(jì)算機(jī)上的文件復(fù)制到遠(yuǎn)程FTP服務(wù)器上稱為上傳,上傳和下載是FTP最常用的兩個(gè)功能2022-11-11