2018-07-09

1硫麻、JVM的工作原理

JVM的內(nèi)部體系結(jié)構(gòu)分為三部分爸邢,

  • (1)類裝載器(ClassLoader)子系統(tǒng)
    作用: 用來裝載.class文件
  • (2)執(zhí)行引擎
    作用:執(zhí)行字節(jié)碼,或者執(zhí)行本地方法
  • (3)運行時數(shù)據(jù)區(qū)
    方法區(qū)拿愧,堆杠河,java棧,PC寄存器浇辜,本地方法棧

2券敌、Java 的內(nèi)存管理

Java GC機制主要完成3件事:確定哪些內(nèi)存需要回收,確定什么時候需要執(zhí)行GC柳洋,如何執(zhí)行GC待诅。
Java內(nèi)存分配和回收的機制概括的說,就是:分代分配熊镣,分代回收卑雁。對象將根據(jù)存活的時間被分為:年輕代(Young Generation)、年老代(Old Generation)绪囱、永久代(Permanent Generation测蹲,也就是方法區(qū))

  • 年輕代:使用“停止-復(fù)制”算法進行清理
  • 老年代:老年代用的算法是標記-整理算法,即:標記出仍然存活的對象(存在引用的)鬼吵,將所有存活的對象向一端移動扣甲,以保證內(nèi)存的連續(xù)。
  • 方法區(qū)(永久代):永久代的回收有兩種:常量池中的常量齿椅,無用的類信息琉挖,常量的回收很簡單,沒有引用了就可以被回收媒咳。對于無用的類進行回收粹排,必須保證3點:

(1)類的所有實例都已經(jīng)被回收
(2)加載類的ClassLoader已經(jīng)被回收
(3)類對象的Class對象沒有被引用(即沒有通過反射引用該類的地方)

3、Dalvik和ART虛擬機的區(qū)別

1涩澡、平臺支持差別:

Dalvik Android 4.4 及其以下平臺使用的虛擬機;
ART Android4.4以上平臺使用的虛擬機技術(shù)坠敷;

2妙同、工作原理差別:

在應(yīng)用程序啟動時,JIT(just-in-time膝迎,即時編譯技術(shù))通過進行連續(xù)的性能分析來優(yōu)化程序代碼的執(zhí)行粥帚,在程序運行的過程中,Dalvik虛擬機在不斷的進行將字節(jié)碼編譯成機器碼的工作限次。
ART引入了AOT(Ahead-Of-Time)這種預(yù)編譯技術(shù)芒涡,在應(yīng)用程序安裝的過程中柴灯,ART就已經(jīng)將所有的字節(jié)碼重新編譯成了機器碼。應(yīng)用程序運行過程中無需進行實時的編譯工作费尽,只需要進行直接調(diào)用.因此赠群,ART極大的提高了應(yīng)用程序的運行效率,同時也減少了手機的電量消耗旱幼,提高了移動設(shè)備的續(xù)航能力查描,在垃圾回收等機制上也有了較大的提升。
相對于Dalvik虛擬機模式柏卤,ART模式下Android應(yīng)用程序的安裝需要消耗更多的時間冬三,同時也會占用更大的儲存空間(指內(nèi)部儲存,用于儲存編譯后的代碼),但節(jié)省了很多Dalvik虛擬機用于實時編譯的時間

4缘缚、多線程和安全問題

多線程編程中的三個核心概念

  • 原子性:即一個操作(有可能包含有多個子操作)要么全部執(zhí)行(生效)勾笆,要么全部都不執(zhí)行(都不生效)。
  • 可見性:當多個線程并發(fā)訪問共享變量時桥滨,一個線程對共享變量的修改窝爪,其它線程能夠立即看到「迷埃可見性問題是好多人忽略或者理解錯誤的一點酸舍。
  • 順序性:順序性指的是,程序執(zhí)行的順序按照代碼的先后順序執(zhí)行里初。

activity啟動過程

java泛型
java反射
activity事件分發(fā)
volley原理
進程間傳輸方式
熱修復(fù)相關(guān)的問題

一個listview很卡頓啃勉,讓分析一下其中可能的原因和你碰見這個問題如何動手解決。

怎么停止一個線程,waitxxx有用嗎双妨?

靜態(tài)內(nèi)部類引用外部類怎么解決引用問題

for循環(huán)…的線程同步問題

Java虛擬機什么時候進行GC淮阐,Android虛擬機呢?

弱引用和軟引用的區(qū)別刁品?各自的使用場景是什么

RxJava和EventBus的區(qū)別泣特?好奇怪

一個類中聲明private static Bitmap會引起什么問題,主要考察的是內(nèi)存泄露

ScrollView和Listview的區(qū)別挑随?

listview加載圖片會有什么問題状您,如果引起圖片錯位是什么原因?qū)е碌模吭趺唇鉀Q兜挨?

多線程和安全問題

事件沖突
一些常用的 list,map 原理膏孟,以及子類之間的差別

bitmap局部加載

IntentService、HandlerThread

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末拌汇,一起剝皮案震驚了整個濱河市柒桑,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌噪舀,老刑警劉巖魁淳,帶你破解...
    沈念sama閱讀 221,635評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件飘诗,死亡現(xiàn)場離奇詭異,居然都是意外死亡界逛,警方通過查閱死者的電腦和手機昆稿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來仇奶,“玉大人貌嫡,你說我怎么就攤上這事「盟荩” “怎么了岛抄?”我有些...
    開封第一講書人閱讀 168,083評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長狈茉。 經(jīng)常有香客問我夫椭,道長,這世上最難降的妖魔是什么氯庆? 我笑而不...
    開封第一講書人閱讀 59,640評論 1 296
  • 正文 為了忘掉前任蹭秋,我火速辦了婚禮,結(jié)果婚禮上堤撵,老公的妹妹穿的比我還像新娘仁讨。我一直安慰自己,他們只是感情好实昨,可當我...
    茶點故事閱讀 68,640評論 6 397
  • 文/花漫 我一把揭開白布洞豁。 她就那樣靜靜地躺著,像睡著了一般荒给。 火紅的嫁衣襯著肌膚如雪丈挟。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,262評論 1 308
  • 那天志电,我揣著相機與錄音曙咽,去河邊找鬼。 笑死挑辆,一個胖子當著我的面吹牛例朱,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播鱼蝉,決...
    沈念sama閱讀 40,833評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼茉继,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了蚀乔?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,736評論 0 276
  • 序言:老撾萬榮一對情侶失蹤菲茬,失蹤者是張志新(化名)和其女友劉穎吉挣,沒想到半個月后派撕,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,280評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡睬魂,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,369評論 3 340
  • 正文 我和宋清朗相戀三年终吼,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片氯哮。...
    茶點故事閱讀 40,503評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡际跪,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出喉钢,到底是詐尸還是另有隱情姆打,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布肠虽,位于F島的核電站幔戏,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏税课。R本人自食惡果不足惜闲延,卻給世界環(huán)境...
    茶點故事閱讀 41,870評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望韩玩。 院中可真熱鬧垒玲,春花似錦、人聲如沸找颓。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽叮雳。三九已至想暗,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間帘不,已是汗流浹背说莫。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留寞焙,地道東北人储狭。 一個月前我還...
    沈念sama閱讀 48,909評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像捣郊,于是被迫代替她去往敵國和親辽狈。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,512評論 2 359

推薦閱讀更多精彩內(nèi)容