2017.12.20 頭條Android內推一二三四面

一面(視頻面試 40min)

進程和線程之間的區別

操作系統堆棧(JVM的堆棧)

兩個擁有不同數量線程的進程,執行時間長短?CPU是如何為線程和進程分配時間片?

Activity啟動模式、作用

View繪制流程

HashMap實現原理

Android動畫機制

volatile關鍵字作用(Java內存模型)

了解新技術的途徑,了解的新技術

所了解的第三方類庫,看過的源碼(Glide源碼)

忘了。。。

二面 (視頻面試 45min)

獲取一個View的所有子View(代碼實現)

MVP和MVC之間的區別,如果使Activity功能單一化,使其作為View層,那么MVP和MVC之間的區別

HTTP1.0與1.1之間的區別

RxJava的優缺點

fetch和pull之間的區別

多進程應用場景,多進程通信方式

Gradle 執行順序,腳本文件作用

ListView緩存機制以及緩存ItemView數量、加載亂序原因及解決方法

動態代理和靜態代理,是否可以相互替換

圖片加載框架的優缺點,效率對比

100*100的圖片占了多少內存

忘了。。。這一面炸了,炸了啊!!!

三面 (視頻面試 40min)

介紹自己的一個項目,講了P2P與NAT。關于內網穿透相關知識以及項目實現。

Activity和Fragment生命周期,Activity各個生命周期使用、Fragment原理及使用

Android消息機制,子線程使用Handler步驟,還有一個問題,不知道問了什么

自定義View實現方式

懶漢+單例+多線程+優化(代碼實現)

吃蘋果(類似于青蛙跳臺階)(代碼實現)

所了解的新技術

忘了。。。

四面(視頻面試 30min+)

介紹自己的項目及學習過程
介紹所了解過的源碼(Glide)
介紹Android架構組件
Java內部類(真的是死在了上面)
忘了。。。

四面還是掛了,反思一下自己掛的也算是理所當然,對于很多問題都沒有做到真正的深入理解,問題表達和描述也存在一定的問題。學無止境,對于問題還是要學會追根究底、反思總結才得行~

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。