Android面試總結(jié)

前言:

“金三銀四”這句話真的不是說說而已,每年的三四月份確確實實是招聘旺季,各公司人才缺口大,市場總體需求量大增,想要換份好工作的同學(xué)們一定不要錯過哦!

個人認(rèn)為,每一次的跳槽經(jīng)歷對我們來說都是一次提升,在面試前,需要我們?nèi)セ仡櫥A(chǔ)知識,深入了解各大框架,狠刷算法題等等;面試過程中,我們要沉著冷靜,思路清晰,知無不言,言無不盡,也是對我們溝通能力的考驗;面試過后,我們必須找個安靜的地方,對整個面試過程進(jìn)行復(fù)盤,同時對面試題進(jìn)行記錄,對自己的回答進(jìn)行總結(jié)。下面是我對自己近期面試的部分總結(jié),目前只給出了問題,之后我會盡量補上答案,希望能夠幫到大家!

奇虎360:

1、Activity啟動模式及應(yīng)用場景

2、handler機制、以及和message、looper等之間的關(guān)系

3、與service通信的幾種方式,進(jìn)程間通信和進(jìn)程內(nèi)通信的區(qū)別

4、線程死鎖、用代碼實現(xiàn)

5、寫出兩種單例模式,說出優(yōu)缺點

6、實現(xiàn)recycleview側(cè)滑刪除

7、http、tcp/ip,get和post區(qū)別

8、內(nèi)部類為什么會內(nèi)存泄漏?換成靜態(tài)內(nèi)部類為什么就解決了?

9、給recycleview加header和footer如何加,為什么能加,復(fù)雜布局實現(xiàn)等

10、輸入字符串“abcdef”,輸出“*****abcdef”,并返回號個數(shù),代碼實現(xiàn),盡量用空間復(fù)雜度和時間復(fù)雜度最小的方式

11、一個整數(shù)數(shù)組中,只有兩個數(shù)出現(xiàn)1次,其他數(shù)均出現(xiàn)2次,求這兩個數(shù),盡量用空間復(fù)雜度和時間復(fù)雜度最小的方式

12、談?wù)勴椖恐凶约赫J(rèn)為做的很好并有一定難度的東西

人人車:

1、activity生命周期,onsaveinstance和onrestoreinstance是成對調(diào)用的嗎

2、set和list有什么區(qū)別

3、線程池的創(chuàng)建、使用,核心線程和非核心線程的區(qū)別

4、handler機制,looper什么時候創(chuàng)建?在prepare里做了什么?在loop方法里做了什么?

5、自定義view繪制,onMeasure里測量規(guī)格,測量模式和測量大小如何存在?

6、事件分發(fā)機制,onTouch、onTouchevent和onClick的調(diào)用順序

7、okhttp的實現(xiàn)原理、普通攔截器和網(wǎng)絡(luò)攔截器有什么區(qū)別,緩存攔截器和網(wǎng)絡(luò)攔截器的調(diào)用順序

8、retrofit的實現(xiàn)原理,動態(tài)代理相關(guān)

9、rxjava線程調(diào)度器有幾種、如何使用?

10、如何實現(xiàn)進(jìn)程間通信?binder原理相關(guān)

11、servicemanager的作用是什么?

12、bundle傳值有限制嗎?是多少?

13、抽象類和接口區(qū)別、接口中可以有方法體嗎?

14、hashmap是怎么實現(xiàn)的?發(fā)生數(shù)據(jù)碰撞該如何處理?

15、handler的post和sendMessage有什么不同?有什么聯(lián)系?

16、manifest中activity的export屬性有什么作用

新東方在線:

1、自定義view流程

2、RxJava使用,原理等

3、activity間跳轉(zhuǎn)時的生命周期

4、內(nèi)存泄漏和內(nèi)存溢出的區(qū)別

5、強軟弱虛引用的區(qū)別

6、設(shè)計模式、靜態(tài)內(nèi)部類的單例模式為什么性能好

7、30M的大圖片處理

8、字符串反轉(zhuǎn)

好未來:

1、項目中是如何使用MVP模式的?實現(xiàn)與結(jié)構(gòu)

2、自定義view流程

3、性能優(yōu)化、內(nèi)存泄漏、內(nèi)存溢出(列舉項目中遇到的)

4、本地與h5互調(diào)有哪些方式?連接橋的方式用過嗎?

5、事件分發(fā)流程

6、http與https區(qū)別,post和get區(qū)別

7、兩個單鏈表相交,找出相交的結(jié)點(手寫實現(xiàn))

8、獲取單鏈表倒數(shù)第k個元素(手寫實現(xiàn))

9、153=13+53+3^3,求出符合上述條件的1000以內(nèi)的數(shù)(手寫實現(xiàn))

課程格子:

1、自定義view流程,有一個寬高屬性設(shè)置為wrapcontent的imageview,它的大小是如何測量的?

2、rxjava的線程切換,single和observable等的區(qū)別,subscribeOn和observeOn可以調(diào)用幾次?

3、簡述OKhttp的原理,如何實現(xiàn)?

4、handler的postDelayed內(nèi)部是如何實現(xiàn)的?

5、簡述eventbus的原理

6、arrayList和linkedList區(qū)別

7、介紹一下接口的特征

8、activity啟動模式,singletask相關(guān),任務(wù)棧相關(guān)

9、項目中框架的搭建

10、native和js互調(diào)有哪些方式?注解的方式會有問題,說說怎么解決的

貍米科技:

1、anctivity啟動流程

2、廣播安全性,本地廣播、設(shè)置權(quán)限、綁定進(jìn)程等

3、事件分發(fā)流程

4、rxJava 被觀察者如何創(chuàng)建?有幾種創(chuàng)建方式?如何實現(xiàn)線程切換的?轉(zhuǎn)換用過嗎?

5、設(shè)計模式用過哪些?手寫單例模式

6、volatile關(guān)鍵字的作用

7、content provide如何使用

8、項目中做過哪些內(nèi)存優(yōu)化

總結(jié):

1、java和Android基礎(chǔ)一定要過一遍,推薦大家看這個總結(jié),比較全面;

2、Android中流行的各大框架至少要會用并了解原理,然后最好能深入源碼理解,這點很加分;

3、一般大點的公司都會有兩到三輪技術(shù)面試,第一輪面基礎(chǔ),二輪和三輪除了問的更深之外,算法題也是少不了的,建議大家平時抽空刷刷LeetCode或者劍指Offer。

最后,祝每一位努力的人都能得到自己想要的結(jié)果!加油!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,872評論 25 709
  • 整理一些常見的Android面試題(針對于2~3年開發(fā)經(jīng)驗中所遇到的問題) synchronized鎖靜態(tài)方法和非...
    appzy閱讀 2,448評論 4 18
  • 當(dāng)月亮不能照亮大地的時候太陽便給予了她自己的光芒 當(dāng)太陽不能給予大地靜默的時候月亮便為她披上了自己的外衣 當(dāng)我不能...
    小春楊閱讀 352評論 0 0
  • 故事大概是從這里開始的:女主綾站在秋田大學(xué)入學(xué)式上與同學(xué)合影。她的不甘心臉暴露了她心里面更快更高更強的小魔...
    牦牛筆記閱讀 296評論 0 1
  • 今天的我難過的想死,計劃了兩種死法都比較血腥。 我好像沒有想象中的那么堅強,心里承受能力也沒那么好,意志力沒那么堅...
    掌心上的薔薇河閱讀 126評論 0 0

友情鏈接更多精彩內(nèi)容