超经典,百度最爱考的安卓Android百题
?這個(gè)系列計(jì)劃收集幾百份朋友和讀者的面經(jīng),作者合集方便查看,各位有面經(jīng)屯著可以聯(lián)系我哦
本系列歷史文章:
超經(jīng)典,阿里巴巴歷年高頻面試題匯總:前端崗
阿里巴巴歷年經(jīng)典面試題匯總:Java崗
學(xué)姐百度實(shí)習(xí)面經(jīng)
學(xué)姐,來挑戰(zhàn)字節(jié)最牛部門
最強(qiáng)阿里巴巴歷年經(jīng)典面試題匯總:C++研發(fā)崗
關(guān)于我的那些面經(jīng)——百度后端(附答案)
《關(guān)于我的那些面經(jīng)》滴滴Java崗(附答案)
朋友面神策數(shù)據(jù)庫,第五個(gè)問題不會(huì),直接再見
美女學(xué)姐面了美團(tuán)阿里京東,這些經(jīng)驗(yàn)實(shí)在太真實(shí)了
學(xué)姐騰訊產(chǎn)品面經(jīng)
學(xué)姐總結(jié)奇安信18k常問面試題
?
(1)、MVP模式的優(yōu)缺點(diǎn)
(2)、圖片壓縮怎么做
(3)、圖片緩存怎么做,解釋LruCache算法
(4)、http協(xié)議?
(5)、常用的排序算法,時(shí)間、空間復(fù)雜度
(6)、java中多態(tài)的表現(xiàn)
(7)、抽象類和接口的異同
(8)、android 7.0和android N分別新增了什么內(nèi)容?
(9)、算法題:字符串?dāng)?shù)組(可能很大)按字典序排序,不能用現(xiàn)有的類庫
(10)、自定義控件的基本流程,每一步具體做什么
(11)、介紹http協(xié)議,http的常用請(qǐng)求頭,OkHttp的優(yōu)點(diǎn)在哪?
(12)、android中多線程怎么處理,handler機(jī)制
(13)、多線程下載文件;多個(gè)線程寫同一個(gè)文件和多個(gè)線程分別寫單獨(dú)的文件然后最后合并這兩種做法的區(qū)別在哪?那種性能好?有什么更優(yōu)的方法嗎?
(14)、斷點(diǎn)續(xù)傳文件怎么做?
(15)、android中的性能優(yōu)化,布局、內(nèi)存等
(16)、android中出現(xiàn)內(nèi)存泄漏的原因,怎么發(fā)現(xiàn)?
(17)、解釋OOM的原因,如果當(dāng)前應(yīng)用可用內(nèi)存為20MB,而目前只用了10MB,請(qǐng)問這種情況有可能會(huì)發(fā)生OOM嗎?
(18)、android中的跨進(jìn)程方式,binder原理,數(shù)據(jù)要拷貝幾次?android為什么要設(shè)計(jì)跨進(jìn)程?
(19)、sleep()和wait()的區(qū)別
(20)、為什么要使用設(shè)計(jì)模式?
(21)、多線程訪問單例(雙重鎖寫法)會(huì)存在什么問題?怎么解決?
(22)、使用SharedPreferences的get和put方法讀寫數(shù)據(jù)會(huì)面臨什么問題,IO性能方面怎么解決?
(23)、一個(gè)應(yīng)用如何發(fā)現(xiàn)當(dāng)前局域網(wǎng)中別的也開啟了這個(gè)應(yīng)用的設(shè)備?
(24)、android中CRASH和ANR的區(qū)別在哪?
(25)、android中ANR是怎么發(fā)生的?系統(tǒng)又是如何發(fā)現(xiàn)有應(yīng)用ANR的?
(26)、普通for循環(huán)和增強(qiáng)for循環(huán)的區(qū)別,以及使用的場(chǎng)景
(27)、http2.0新增了什么內(nèi)容?
(28)、當(dāng)需要加載一個(gè)類時(shí),在當(dāng)前classLoader中沒有找到該類會(huì)怎么樣?(雙親委派)如果最后也沒找到呢?(拋出異常ClassNotFound)拋出異常后又會(huì)怎么樣?
(29)、解釋AtomicReference和compareAndSet。
(30)、Apk如何瘦身,如何寫腳本去掉多余的資源,內(nèi)存如何優(yōu)化
(31)、protobuffer 和json什么區(qū)別 分別適用于什么場(chǎng)景,自己設(shè)計(jì)一套通訊協(xié)議,如果盡量壓縮每個(gè)key?
(32)、UI View渲染流程
(33)、activity幾種啟動(dòng)模式
(34)、手寫一個(gè)快排算法
(35)、tcp三次握手 sack是什么
(36)、服務(wù)器如何實(shí)現(xiàn)秒傳文件
(37)、過度繪制怎么解決,如何發(fā)現(xiàn)內(nèi)存泄漏。
(38)、final 有哪些用法。
(39)、static哪些用法
(40)、volatile什么用法
(41)、select,epoll區(qū)別,epoll實(shí)現(xiàn)源碼(紅黑樹+就緒隊(duì)列),為什么用紅黑樹實(shí)現(xiàn),有哪些好處
(42)、值類型和非值類型的理解。
(43)、鎖有幾種
(44)、synchronized 如果加到一個(gè)方法,另一個(gè)線程想訪問類中的其他方法行不行,如果兩個(gè)方法都加sync關(guān)鍵字,又是怎樣的訪問權(quán)限
(45)、public 和默認(rèn)的 什么關(guān)鍵字都不加有什么區(qū)別
(46)、進(jìn)程、線程、golang的協(xié)程的理解
(47)、android service 和廣播的理解
(48)、如果我們的應(yīng)用關(guān)閉了,或者根本沒打開過 還怎么收到推送
(49)、了解過哪些開源框架
(50)、android開發(fā)時(shí)候有沒用過什么框架或者什么設(shè)計(jì)模式
(51)、app里面是否經(jīng)常用http和tcp
(52)、http,tcp,https的連接過程
(53)、linux異步和同步i/o是怎么實(shí)現(xiàn)的
(54)、二叉樹的非遞歸實(shí)現(xiàn)(前序、中序、后序)
(55)、給一個(gè)N*N的矩陣,找出2*2矩陣的和的最大值,時(shí)間復(fù)雜度?最優(yōu)?
(56)、android藍(lán)牙連接(傳統(tǒng)藍(lán)牙,BLE藍(lán)牙),如何連接?
(57)、JVM內(nèi)存分區(qū)(每部分異常會(huì)報(bào)什么錯(cuò)誤?)
(58)、JVM垃圾回收算法(詳細(xì)介紹)
(59)、https連接過程,握手過程
(60)、對(duì)稱加密,非對(duì)稱加密
(61)、android消息機(jī)制
(62)、android事件分發(fā)機(jī)制?
(63)、Volley框架機(jī)制說下,你能抽取出(學(xué)到)幾個(gè)技術(shù)點(diǎn)?
(64)、binder實(shí)現(xiàn)機(jī)制。
(65)、AIDL文件的用處,aidl生成的類有什么用?講下這個(gè)類做的事情和原理
(66)、進(jìn)程之間是相互隔離的,那么從A進(jìn)程到B進(jìn)程使用binder進(jìn)行通訊,那么猜想下到底是怎樣做的呢?
(67)、View的消息機(jī)制,對(duì)于ViewGroup和View有什么不一樣?
(68)、事件攔截的話,可不可以從子View來進(jìn)行操作?。
(69)、listView加上一個(gè)header實(shí)現(xiàn)下拉刷新的功能,要怎樣去實(shí)現(xiàn)?
(70)、listView和header屬于不同的view,相互為兄弟View,外部套一個(gè)大的viewGroup,如何進(jìn)行事件分發(fā)?從初始態(tài)到用戶拉下出現(xiàn)header的過程來依次分析
(71)、listView和header屬于同一個(gè)view層,那么下拉刷新又該如何實(shí)現(xiàn)?事件攔截又該如何去做?
(72)、為什么java是要求是只能單一繼承?卻可以實(shí)現(xiàn)多個(gè)接口?
(73)、抽象類屬性中什么場(chǎng)景下是優(yōu)點(diǎn)?什么場(chǎng)景下優(yōu)點(diǎn)又變成了缺點(diǎn)?
(74)、使用接口什么場(chǎng)景下是優(yōu)點(diǎn)?什么場(chǎng)景下優(yōu)點(diǎn)又變成了缺點(diǎn)?
(75)、網(wǎng)絡(luò)分層?7層,5層,4層,具體每層做什么
(76)、ip是哪一層協(xié)議
(77)、post與get的區(qū)別,get有長(zhǎng)度限制么?
(78)、為什么要使用ip協(xié)議?直接使用mac地址連接不可以么?
(79)、全球這么多廠商,生產(chǎn)的設(shè)備如果有重復(fù)的mac地址,你如何解決這個(gè)問題?網(wǎng)絡(luò)數(shù)據(jù)包傳輸會(huì)有什么問題
(80)、你是網(wǎng)絡(luò)管理員,從英國(guó)的一臺(tái)電腦要打開中國(guó)的一個(gè)網(wǎng)頁,現(xiàn)在就是連接不上(dns正常可以解析到正確IP),你能考慮到哪些問題?
(81)、你是衡水的手機(jī)號(hào),現(xiàn)在你在湖北,那么北京的手機(jī)號(hào)打你的手機(jī)為什么你可以接到電話?
(82)、快排時(shí)間復(fù)雜度是多少?最差?平均?為什么時(shí)間復(fù)雜度是O(N*logN)?怎樣推導(dǎo)出來的?
(83)、你對(duì)app推送有什么了解?如果是你來實(shí)現(xiàn)的話,你能怎么做?
(84)、中國(guó)有13億人,對(duì)全國(guó)身份證號(hào)進(jìn)行排序,你會(huì)怎樣去做
(85)、你上級(jí)讓你去安排一個(gè)日子來舉辦活動(dòng),要求這一天一定不能是周六或者周日,一定要在周一到周五之間,你如何判斷一年里面有哪些日子是合適的?
?
總結(jié)
以上是生活随笔為你收集整理的超经典,百度最爱考的安卓Android百题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。