午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

java - Activity中的成員變量被賦值之后,Activity被回收的時候內存才會被釋放嗎

瀏覽:200日期:2024-02-01 14:38:43

問題描述

Activity中的成員變量被賦值之后,Actiity被回收的時候內存才會被釋放嗎java中一個類中的成員變量被賦值之后,這個類對象被回收時,類中得成員變量才會被釋放內存嗎

問題解答

回答1:

這個問題應該歸類到Java下. 只要是Activity所屬的對象被static持有了, 那就導致整個Activity一直存在在內存中. 除非使用WearReference.

下面是一段類似的錯誤代碼演示:

private static Context sContext;public static void setContext(Context context) { sContext = context;}

如果使用AndroidStudio, 那么IDE會有一段警告提醒: 不要賦值Context對象給static變量.

回答2:

問題描述不清楚, 標點符號都沒有差評. 但是試一下回答:全局對象應該只被static修飾符修飾的變量, static 修飾后的變量, 屬于這個類(class), 或者說改類對應的所有對象, 而不屬于某個對象. 從這個推導一下, 應該能認識到一個對象被回收就引起static被回收是不對的(被回收了其他對象怎么用)這里說到了Activity, 再擴展一下. 一般情況下, 使用static變量引用當前對象是可以的(比如單例模式), 但是Android的設計上, Activity不是一般的類, 它有自己的生命周期, 到期就要被回收(因為功能太強大, 占用內存太對). 所以就有了用static引用當前Activity報內存泄漏的問題.

標簽: java
主站蜘蛛池模板: 亚洲无人区码一码二码三码 | 欧美精品一二 | 不卡视频在线 | 婷婷色在线| 国产九色在线 | 中文日韩在线观看 | 日韩区欧美区 | 美女国产在线 | 久久精品久久精品 | 影音先锋每日资源 | 日日爱影视 | 久久一区二区视频 | 国产视频福利 | 在线视频一区二区 | 亚洲91av| 欧美国产日韩一区二区三区 | 亚洲毛片在线看 | 亚洲爱爱爱 | 国产一区在线免费 | 欧美黄色a视频 | 美丽姑娘免费观看在线观看 | 国产精品美女久久久久久久久 | 国产欧美精品区一区二区三区 | 韩日精品视频 | 国产精品成人免费一区久久羞羞 | 一级特黄aa大片欧美 | 黄色一级免费网站 | 婷婷在线看 | 国产在线看片 | 久草网在线观看 | 亚洲网址在线观看 | 日韩视频精品 | www.色综合 | 成人深夜视频 | 欧日韩在线视频 | 免费av在 | 日韩插插插 | 午夜免费观看 | 黑人操亚洲 | 亚洲日本中文字幕在线 | 日韩精品在线播放 |