av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

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

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

問題描述

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

問題解答

回答1:

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

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

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

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

回答2:

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

標簽: java
主站蜘蛛池模板: 黄网站涩免费蜜桃网站 | 午夜视频在线免费观看 | 久久久精品天堂 | 日韩在线欧美 | 91精品久久久久久久久中文字幕 | 精品久久香蕉国产线看观看亚洲 | 天天久久 | 黄色片网站在线观看 | 日韩欧美在线不卡 | 超碰在线影院 | 亚洲欧美中文字幕 | 国产成人99久久亚洲综合精品 | 亚洲精品视频一区 | 精品美女在线观看视频在线观看 | 国产一区二区精品在线观看 | 丝袜久久 | 日本不卡一区二区三区 | 国产精品久久精品 | 国产精品视频久久久久久 | 青青草视频网 | 午夜欧美a级理论片915影院 | 国产婷婷在线视频 | 亚洲精品一区二区三区免 | 欧美精品一区二区三区在线播放 | 欧美亚洲国语精品一区二区 | 欧洲免费毛片 | 精品亚洲一区二区 | 91在线精品一区二区 | 国产精品一二三区在线观看 | 欧美精品一区二区三区四区 在线 | 人人干人人看 | 国产精品日韩欧美 | 色婷婷一区 | 一级黄色毛片免费 | 久久亚洲国产精品日日av夜夜 | www国产成人免费观看视频,深夜成人网 | 久久91av | 91精品欧美久久久久久久 | 午夜精品一区二区三区在线观看 | 欧美精品 在线观看 | 久久国产精品久久久久久久久久 |