北京某游戲公司
1.介紹一下了解的一個項目棘脐。
2.組件話和模塊化的區(qū)別捕儒?
組件化是基于重用冰啃,減少耦合;模塊化是根據(jù)功能模塊的不同而拆分的肋层。其實組件化就是將一個app拆分成多個模塊亿笤,每一個模塊都是一個組件,開發(fā)過程中可以讓這些組件相互依賴栋猖,也可以單獨調(diào)試,最終打包時需要合并統(tǒng)一成一個apk
3.做了那些性能優(yōu)化汪榔?
4.網(wǎng)絡(luò)模型蒲拉?tcp/IP在哪一層,tcp和udp的區(qū)別痴腌,為什么(沒答好),tcp和http的區(qū)別?
分別是物理層,數(shù)據(jù)鏈路層,網(wǎng)絡(luò)層,傳輸層,表示層,應(yīng)用層;
5.Handler
6.線程同步的方式雌团。這里問的很深
volatile關(guān)鍵字的原理,能保證原子性嗎士聪?
volatile不能保證原子性;首先明白什么是原子性:原子性:是指一個操作是不可中斷的锦援。即使是多個線程一起執(zhí)行的時候,一個操作一旦開始剥悟,就不會被其他線程干擾灵寺。
synchronized關(guān)鍵字,修飾方法,靜態(tài)方法,代碼塊有什么區(qū)別?
1.修飾代碼塊,被修飾的代碼塊稱為同步語句塊,其作用范圍是{}括起來的代碼,作用的對象是調(diào)用這個代碼塊的對象;
2.修飾一個方法,被修飾的方法稱為同步方法,其作用的范圍是整個方法,作用的對象是調(diào)用這個方法的對象;
3.修飾一個靜態(tài)方法,其作用范圍是整個靜態(tài)方法,作用對象是這個類的所有對象;
4.修飾一個類,其作用部分是synchronized后面括號括起來的部分,作用的對象是這個類的所有對象
7.ThreadLocal原理
8.了解那些設(shè)計模式曼库?
9.okhttp,
10.線程池的參數(shù)有幾個各代表什么意思略板。
11.APP啟動的流程毁枯。
12.還看過那些系統(tǒng)源碼?
13.手寫雙重鎖的單利模式叮称,其中為什么要使用volatile關(guān)鍵字种玛。
禁止指令重排