騰訊、百度、華為、搜狗和滴滴Android面試題匯總
前言:前一段時間和大家交流,據(jù)反饋現(xiàn)在Android崗位也沒有以前那么多了,當然這不意味著飽和,只是市場更趨于合理一些,Android還有有很多機會的。最近結(jié)合一些面試的同學(包含社招和校招),整理了下一些面試題目。實際上,很多面試題網(wǎng)上都能找得到。我整理面試題如下,供大家參考,知道比沒知道的好??梢詭痛蠹也槁┎蝗?。以下是(騰訊,百度,華為,搜狗和滴滴 這些廠的面試題)
Android基礎(chǔ)
View的繪制流程;自定義View如何考慮機型適配;自定義View的事件分發(fā)機制;View和ViewGroup分別有哪些事件分發(fā)相關(guān)的回調(diào)方法;自定義View如何提供獲取View屬性的接口;
Art和Dalvik對比;虛擬機原理,如何自己設(shè)計一個虛擬機(內(nèi)存管理,類加載,雙親委派);JVM內(nèi)存模型及類加載機制;內(nèi)存對象的循環(huán)引用及避免
內(nèi)存回收機制與GC算法(各種算法的優(yōu)缺點以及應(yīng)用場景);GC原理時機以及GC對象;內(nèi)存泄露場景及解決方法;OOM的避免及解決方法
四大組件及生命周期;ContentProvider的權(quán)限管理(讀寫分離,權(quán)限控制-精確到表級,URL控制);Activity的四種啟動模式對比;Activity狀態(tài)保存于恢復(fù)
Fragment生命周期;Fragment狀態(tài)保存
startActivityForResult是哪個類的方法,在什么情況下使用,如果在Adapter中使用應(yīng)該如何解耦
AsyncTask原理及不足;IntentService原理
AstncTask+HttpClient與AsyncHttpClient有什么區(qū)別
如何保證一個后臺服務(wù)不被殺死;比較省電的方式是什么
如何通過廣播攔截和abort一條短信;廣播是否可以請求網(wǎng)絡(luò);廣播引起anr的時間限制
進程間通信,AIDL
Handler機制及底層實現(xiàn)
Binder機制及底層實現(xiàn)
ApplicationContext和ActivityContext的區(qū)別
一張Bitmap所占內(nèi)存以及內(nèi)存占用的計算
對于應(yīng)用更新這塊是如何做的?(灰度,強制更新,分區(qū)域更新)
混合開發(fā),RN,weex,H5,小程序(做Android的了解一些前端js等還是很有好處的)
說一款你認為當前比較火的應(yīng)用并設(shè)計(直播APP)
Java基礎(chǔ)
集合類以及集合框架;HashMap與HashTable實現(xiàn)原理,線程安全性,hash沖突及處理算法;ConcurrentHashMap
進程和線程的區(qū)別;多線程與線程池
數(shù)據(jù)一致性如何保證;Synchronized關(guān)鍵字,類鎖,方法鎖,重入鎖
同步的方法;多進程開發(fā)以及多進程應(yīng)用場景
服務(wù)器只提供數(shù)據(jù)接收接口,在多線程或多進程條件下,加小編微信:AMEPRE,如何保證數(shù)據(jù)的有序到達
ThreadLocal原理,實現(xiàn)及如何保證Local屬性
String StringBuilder StringBuffer對比
接口與回調(diào);回調(diào)的原理;寫一個回調(diào)demo;
泛型原理,舉例說明;解析與分派
抽象類與接口的區(qū)別;應(yīng)用場景;抽象類是否可以沒有方法和屬性
靜態(tài)屬性和靜態(tài)方法是否可以被繼承?是否可以被重寫?原因
修改對象A的equals方法的簽名,那么使用HashMap存放這個對象實例的時候,會調(diào)用哪個equals方法
數(shù)據(jù)結(jié)構(gòu)與算法
堆和棧在內(nèi)存中的區(qū)別是什么(數(shù)據(jù)結(jié)構(gòu)方面以及實際實現(xiàn)方面)
最快的排序算法是哪個?給阿里2萬多名員工按年齡排序應(yīng)該選擇哪個算法?堆和樹的區(qū)別;寫出快排代碼;鏈表逆序代碼
求1000以內(nèi)的水仙花數(shù)以及40億以內(nèi)的水仙花數(shù)
子串包含問題(KMP 算法)寫代碼實現(xiàn)
萬億級別的兩個URL文件A和B,如何求出A和B的差集C,(Bit映射->hash分組->多文件讀寫效率->磁盤尋址以及應(yīng)用層面對尋址的優(yōu)化)
蟻群算法與蒙特卡洛算法
寫出你所知道的排序算法及時空復(fù)雜度,穩(wěn)定性
百度POI中如何試下查找最近的商家功能(坐標鏡像+R樹)
其他
死鎖的四個必要條件
常見編碼方式;utf-8編碼中的中文占幾個字節(jié);int型幾個字節(jié)
實現(xiàn)一個Json解析器(可以通過正則提高速度)
MVC MVP MVVM; 常見的設(shè)計模式;寫出觀察者模式的代碼
TCP的3次握手和四次揮手;TCP與UDP的區(qū)別
HTTP協(xié)議;HTTP1.0與2.0的區(qū)別;HTTP報文結(jié)構(gòu)
HTTP與HTTPS的區(qū)別以及如何實現(xiàn)安全性
非技術(shù)問題匯總
研究比較深入的領(lǐng)域有哪些
對業(yè)內(nèi)信息的關(guān)注渠道有哪些
最近都讀哪些書
自己最擅長的技術(shù)點,最感興趣的技術(shù)領(lǐng)域和技術(shù)點
項目中用了哪些開源庫,如何避免因為引入開源庫而導(dǎo)致的安全性和穩(wěn)定性問題
實習過程中做了什么,有什么產(chǎn)出
5枚硬幣,2正3反如何劃分為兩堆然后通過翻轉(zhuǎn)讓兩堆中正面向上的硬幣和反面向上的硬幣個數(shù)相同
時針走一圈,時針分針重合幾次
N * N的方格紙,里面有多少個正方形
現(xiàn)在下載速度很慢,試從網(wǎng)絡(luò)協(xié)議的角度分析原因,并優(yōu)化(網(wǎng)絡(luò)的5層都可以涉及)
HR問題匯總
講一件你印象最深的一件事情
介紹一個你影響最深的項目
介紹你最熱愛最擅長的專業(yè)領(lǐng)域
公司實習最大的收獲是什么
自己的優(yōu)點和缺點是什么?舉例說明
你的學習方法是什么樣的?實習過程中如何學習?實習項目中遇到的最大困難是什么以及如何解決的
說一件最能證明你能力的事情
項目中遇到最大的困難是什么?如何解決的
你的職業(yè)規(guī)劃以及個人目標;未來發(fā)展路線及求職定位
評價下自己,評價下自己的技術(shù)水平,個人代碼量如何
通過哪些渠道了解的招聘信息,其他同學都投了哪些公司
業(yè)余都有哪些愛好
當前的offer狀況;如果BATH都給了offer該如何選
你對一份工作更看重哪些方面?平臺,技術(shù),氛圍,城市,money
理想薪資范圍;杭州崗和北京崗選哪個
理想中的工作環(huán)境是什么
實習過程中周圍同事/同學有哪些值得學習的地方
家人對你的工作期望及自己的工作期望
若上司在公開會議上誤會你了,該如何解決
是否可以實習,可以實習多久
你看中公司的什么?或者公司的那些方面最吸引你?
推薦書籍:幾本Android程序員必讀書籍
以上就是騰訊、百度、華為各公司的Android面試題,希望對大家的學習有所幫助。
相關(guān)文章
Android Insets相關(guān)知識總結(jié)
這篇文章主要介紹了Android Insets相關(guān)知識總結(jié),幫助大家更好的理解和學習使用Android,感興趣的朋友可以了解下2021-03-03Android 提交或者上傳數(shù)據(jù)時的dialog彈框動畫效果
我們在使用支付寶支付的時候會看到類似這種彈框動畫效果,下面通過實例代碼給大家分享android 提交或者上傳數(shù)據(jù)時的彈框動畫效果,感興趣的的朋友參考下2017-07-07Android Zygote啟動構(gòu)造流程及進程創(chuàng)建詳解
這篇文章主要為大家介紹了Android Zygote啟動構(gòu)造流程及進程創(chuàng)建詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-07-07Android?自定義開源庫?EasyView實現(xiàn)詳解
這篇文章主要為大家介紹了Android自定義開源庫EasyView實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-04-04