第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如果引用變量設置為null,它仍會消耗內(nèi)存嗎?[重復]

如果引用變量設置為null,它仍會消耗內(nèi)存嗎?[重復]

翻閱古今 2019-04-19 18:19:18
空值只能賦予引用類型,如果我理解正確則指向地址0.此外,如果使用“new”關鍵字創(chuàng)建類的實例,我們將為對象分配內(nèi)存。我的問題是,如果我們將一個對象初始化為null,它是否仍然消耗內(nèi)存?
查看完整描述

2 回答

?
拉風的咖菲貓

TA貢獻1995條經(jīng)驗 獲得超2個贊

int[] arr = null;

實際上沒有初始化任何東西。它只是創(chuàng)建一個arr指向地址0 的引用。所以不,它不會占用任何空間,除了引用arr本身需要多少(通常4或8個字節(jié),具體取決于系統(tǒng))。

另一方面,這會初始化對象并占用“大量”空間(至少大小為10x int,因此> = 40個字節(jié)):

int[] arr = new int[10];


查看完整回答
反對 回復 2019-05-15
?
幕布斯7119047

TA貢獻1794條經(jīng)驗 獲得超8個贊

我對你要說的內(nèi)容有兩種解釋:

初始化為NULL

String hello = null;

這甚至沒有初始化任何東西。這就像有一個抽屜,在上面貼上標簽,但實際上沒有把任何東西放在抽屜里面。結果,它不消耗任何內(nèi)存

設置為NULL

String hello = "hey there!";hello = null;

這就像抽屜里裝滿了東西,然后將所有東西拿出去扔掉。這仍然消耗內(nèi)存,因為你扔掉的舊東西仍然存在。為了擺脫舊的東西,垃圾收集通常會遲早開始并將其全部刪除。你也可以System.gc()手動,而不是我推薦它。


查看完整回答
反對 回復 2019-05-15
  • 2 回答
  • 0 關注
  • 813 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號