2018春招實習Android面試(得到網(wǎng)易、今日頭條、360、依圖、粉筆...offer)

星邏智能科技

第一份offer

  1. 介紹下四大組件
  2. Activity啟動模式
  3. 進程/線程之間如何通信
  4. 項目相關(guān),自己擔任什么職務(wù),負責哪方面
    ...其他忘記了

今日頭條

內(nèi)推提前批吧,處理速度很快
三面技術(shù)面+一面hr一起很考驗人,面完等了一個星期拿到offer

一面

  1. 問項目,項目中設(shè)計那些主要功能,怎么實現(xiàn)的,具體實現(xiàn)細節(jié)。項目里隱私數(shù)據(jù)怎么加密傳輸
  2. 寫過那些自定義View,說說實現(xiàn)
  3. view中invalidate()和postInvalidate()又什么區(qū)別
  4. 用RecyclerView和ListView實現(xiàn)列表又什么好處,為什么不能用ScrollView自己寫個ViewGroup加滑動效果,ViewHolder到底是重用什么,covertView是干嘛的
  5. Fragment用FragmentManager開啟事務(wù)hide它是否立即執(zhí)行
  6. 事件分發(fā)機制,事件分發(fā)從哪開始
  7. ViewRootImpl干嘛的
  8. 動畫分類,揭露動畫
  9. RxJava好處,轉(zhuǎn)換

二面

  1. TCP和UDP區(qū)別
  2. Http和Https區(qū)別,Https怎么加密
  3. TCP三次握手,為什么要有第三次握手
  4. Http狀態(tài)碼
  5. HashMap怎么實現(xiàn)的
  6. Java反射,動態(tài)代理實現(xiàn)
  7. Java異常
  8. Java線程創(chuàng)建方式
  9. Java線程同步方法
  10. Sychronized/ReentrantLock/Volatile
  11. JVM內(nèi)存區(qū)域和垃圾回收機制
  12. 什么時候會出現(xiàn)類加載
  13. 雙親委托類加載,又什么好處
  14. SQLite和ContentProvider區(qū)別
  15. Handler機制
  16. 事件分發(fā)機制
  17. Activity啟動模式
  18. Android組件間數(shù)據(jù)傳遞如何傳輸字節(jié)流,對象
  19. ListView優(yōu)化
  20. include、merge、viewSub
  21. APP打包流程
  22. 二叉樹第n層節(jié)點數(shù),用遞歸和非遞歸
  23. 在一個區(qū)域內(nèi)有很多點,如何找到離自己最近的點?(地圖中找最近的電影院)

三面
上面問到的重復的就不說了

  1. 瀏覽器打開一個鏈接都發(fā)生什么
  2. Okhttp原理
  3. Java到底傳值傳引用?
  4. Android最新技術(shù)動態(tài)?
  5. Kotlin學過嗎?相對于Java區(qū)別
  6. 什么是函數(shù)式編程
  7. 線程進程區(qū)別
  8. 線程和進程通信都有哪些方法?
  9. 還有項目相關(guān)

HR面
這個好說,非技術(shù)面,問你一些情況,學Android多久了,那些的,為什么學,做了什么,最滿意的什么,對頭條了解,喜歡哪些app,為什么...

粉筆網(wǎng)

兩面技術(shù)+手擼代碼,部門leader沒面就通知拿到offer

電話一面

  1. Activity A跳轉(zhuǎn)Activity B生命周期,B如何傳消息給A
  2. 活動間如何傳信息,傳對象,如果傳大量信息呢
  3. 持久化數(shù)據(jù)存儲有哪些方法,對應(yīng)于什么數(shù)據(jù),應(yīng)在Activity那個方法存
  4. onSaveInstance會在什么情況下調(diào)用
  5. Thread和Runnable又什么區(qū)別?如果想要返回值用什么
  6. AsyncTask原理,三個方法回調(diào)
  7. 顯示活動時如何點擊時跳轉(zhuǎn)詳情?如何詳情返回后不退出而回到主界面?PaddingIntent和Intent區(qū)別
  8. LruCache原理,內(nèi)部怎么實現(xiàn)
  9. ArrayList能否邊遍歷邊修改?能否邊遍歷邊移除?怎么安全移除?是否線程安全?想線程安全怎么辦?
  10. 事件分發(fā)流程講一下
  11. 自定義View怎么實現(xiàn)?自定義過哪些View
  12. 對Android源碼,框架源碼有哪些了解?OkHttp內(nèi)部實現(xiàn)
  13. TCP、UDP
  14. 三次握手
  15. Http和Https區(qū)別
  16. 網(wǎng)絡(luò)劫持
  17. 拍照時如何獲取合適分辨率?如何壓縮Bitmap?
  18. 動態(tài)權(quán)限申請
  19. ListView的ViewHolder到底是干嘛
  20. 項目相關(guān)
  21. 滑動沖突解決

電話二面

  1. 開始一直問項目?負責什么?技術(shù)細節(jié)?他提出各種可能
  2. 反射相關(guān)
  3. Java程序,Android項目如何編譯運行?編譯原理相關(guān)
  4. 匯編如何執(zhí)行

手擼代碼
########
目錄/translate下有文件,文件名如 AK~AZ.txt, BA~CZ.txt, DAA~DNA.txt。
寫一個函數(shù),F(xiàn)ile search(String word), 給定一個單詞,找出對應(yīng)的文件。
如,參數(shù)camera, 返回new File("/translate/BA~CZ.txt")

########
生產(chǎn)者消費者問題。生產(chǎn)者生成1~100的隨機整數(shù),消費者消費這個整數(shù)并打印。
生產(chǎn)者有三個,分別以1秒、2秒、5秒的速度生成。
消費者有兩個,分別以1秒、3秒的速度消費。

########
本地數(shù)據(jù)庫有遠程文件目錄映射表,表名為file, 表結(jié)構(gòu)如下:
key type
id string //文件唯一id
name string
type int //文件類型, 文件夾為1
parentId string //父目錄id, 如果沒有父目錄為0

class FileBean {
public String id;
public String name;
public int type;
public String parentId;
}
有 Db 工具類 List<FileBean> Db.query(String sql);

請寫一個函數(shù),返回遠程文件的整個樹形結(jié)構(gòu)。

路口網(wǎng)

一面

  1. 講一下什么是OOP?OOP三大特性?相應(yīng)特性怎么實現(xiàn)?
  2. 父類和子類構(gòu)造函數(shù)調(diào)用順序?構(gòu)造塊
  3. TCP三次握手,為什么要第三次握手
  4. TCP,UDP區(qū)別
  5. 進程線程區(qū)別
  6. Fragment生命周期
  7. Java 8新特性
  8. 四大組件
  9. Java鎖機制方式
  10. Synchronized和ReentranLock區(qū)別
  11. JVM內(nèi)存結(jié)構(gòu),都干嘛的
  12. JVM堆中對象如何回收?
  13. ArrayList和LinkedList區(qū)別?訪問時間復雜度,是否有序
  14. Synchronized鎖類還是鎖對象,傳入this呢

二面
二面坑,體驗不好,沒問到點上

  1. 項目相關(guān)
  2. 設(shè)計模式
  3. 快排,二分
  4. 貪心,動態(tài)規(guī)劃

三面
hehe,三面更坑,這公司都沒安排好就來招人,我等了1個小時,最后胡亂問我了5分鐘,這公司投前慎重考慮

永輝

一面

  1. OOP三大特性?相應(yīng)特性怎么實現(xiàn)?
  2. Java集合架構(gòu)
  3. HashMap和HashTable
  4. Java基本類型,引用類型
  5. 活動跳轉(zhuǎn)的回調(diào)
  6. Git的暫存區(qū),git add撤銷
  7. String、StringBuilder、StringBuffer
  8. final/finnally/finalize
  9. finalize和GC先后
  10. 線程方式、線程優(yōu)化、AsyncTask
  11. Activity和Fragment信息傳遞
  12. EventBus原理
  13. Java設(shè)計模式用過哪些
  14. 自定義View
  15. 事件分發(fā),具體情境
  16. MeasureSpac
  17. 自定義View wrap_content實現(xiàn)
  18. ListView優(yōu)化
  19. Handler機制
  20. MessageQueue具體實現(xiàn)
  21. HaspMap實現(xiàn),hashcode實現(xiàn),調(diào)用幾次?負載因子設(shè)置?優(yōu)化大量碰撞問題
  22. 寫對象到文件
  23. 序列化方式?區(qū)別
  24. Service啟動方式?應(yīng)用場景?控制它?
  25. 屏幕刷新機制 *
  26. 自定義View遇到的坑
  27. 內(nèi)存泄漏,內(nèi)存溢出?如何優(yōu)化?
  28. Activity啟動模式
  29. MVP/MVVM/MVC

二面
不小心放了面試官鴿子...

CVTE

一面

  1. 項目相關(guān)?具體實現(xiàn)?技術(shù)?具體使用情況?遇到哪些問題?
  2. Android生命周期
  3. 活動跳轉(zhuǎn)的回調(diào)
  4. BroadcastReceiver動靜態(tài)綁定
  5. BroadcastReceiver靜態(tài)如何在APP未啟動是接收
  6. Service綁定啟動
  7. 并發(fā)有哪些好的方法
  8. 并發(fā)控制
  9. Synchronized和ReentranLock區(qū)別
  10. 不用上面這些實現(xiàn)生產(chǎn)者消費者模式
  11. HashMap實現(xiàn)
  12. JVM中垃圾收集算法及垃圾收集器詳解
  13. 事件分發(fā)
  14. Android消息機制
  15. Binder原理
  16. 設(shè)計模式
  17. 單例模式,那種最好?為什么懶加載線程安全
  18. Android新技術(shù)

二面
面試官很好,我提問的問題很耐心的解答,一個問題回答了5分鐘10分鐘

  1. 項目相關(guān)
  2. Java 設(shè)計模式
  3. 網(wǎng)絡(luò)框架
  4. 框架的原理實現(xiàn)
  5. 對跨平臺開發(fā)了解嗎
  6. 算法 找出三個字符串中都出現(xiàn)且出現(xiàn)第n 多的字母是什么
  7. Java并發(fā)控制,具體場景

hr面

  1. 為什么實習
  2. 想去哪個公司實習為什么
  3. 小時候及現(xiàn)在家庭狀況?父母對你最大的影響?...
  4. 壓力最大的時候?
    ...

依圖

offer get
一面

  1. 輸入兩個字符串的字符數(shù)組,表示在坐標系中的點(范圍0~255),找出與之距離最近的兩個字符相同的點如["00", "FF"]
  2. 兩個骰子投出6點概率
  3. n個骰子投出s點概率(編程怎么實現(xiàn))
  4. 項目相關(guān)

二面

  1. 項目相關(guān),遇到困難
  2. 蛇形矩陣
  3. 兩個人玩報數(shù)游戲,報數(shù)只能在前面一個人報的數(shù)的基礎(chǔ)上加1~10,最先超過100(>=100)的人贏,贏的策略
  4. 生命周期及作用
  5. 并發(fā)時遇到的問題
  6. 內(nèi)存泄漏的情形

酷家樂

一面

  1. 做過那些項目?如何開發(fā),團隊or個人?用到哪些技術(shù)?
  2. Android消息機制
  3. 事件分發(fā)
  4. onTouchListener調(diào)用時機
  5. 事件中ACTION_DOWN和其他action有什么區(qū)別?
  6. 性能優(yōu)化方法?
  7. 內(nèi)存泄漏相應(yīng)場景?防止內(nèi)存泄漏?
  8. 菲波那切數(shù)列最有效率的求法
  9. 數(shù)組中第k大的數(shù)
  10. 有25匹馬,跑道只有5條,通過幾次能找出最快的3匹馬
  11. 郵箱系統(tǒng)設(shè)計,再加個郵箱文件夾功能如何更改
  12. Java設(shè)計模式有哪些
  13. 如何學Android?

螞蟻金服

一面
沒問知識點,問項目沒問技術(shù)實現(xiàn),感覺很不適應(yīng),可能要一面涼

  1. 自我介紹,簡歷上有的不說
  2. 項目介紹,在其中擔任什么職位
  3. 怎么學的Android
  4. TCP和UDP應(yīng)用場景,在項目開發(fā)中的選擇
  5. 單鏈表長度(有可能有環(huán))
  6. 有三個箱子,箱子上貼著標簽,對應(yīng)著箱子里的東西,分別是籃球,足球,籃球和足球,但標簽順序不對,如何只在其中一個箱子里只取出一個球來讓標簽順序正確
  7. 開源框架看過哪些
  8. 有個消息隊列,一個線程阻塞式的取消息,如何讓它停止
  9. 再把所有項目介紹下
  10. 業(yè)余時間都在做什么

美圖

電話一面
面試官提前下了我的項目,看里面代碼...

  1. 看你專業(yè)排名很靠前,說說你的學習方法
  2. 你怎么學習數(shù)學(高等數(shù)學、線性代數(shù))的?在實際生活中有哪些應(yīng)用
  3. 怎么學習Java、Android的?自學的嗎
  4. 講一下Java體系結(jié)構(gòu)?各種知識點都講下
  5. Java集合類哪些線程安全,哪些線程不安全?
  6. HashTable和HashMap怎么計算hash的?
  7. Java設(shè)計模式就23種嗎?平時開發(fā)中用到哪些
  8. 集合類并發(fā)時異常如何處理?Java鎖機制有哪些?
  9. Synchronized和ReentranLock效率如何量化?時間量化有哪些方法
  10. Java中有幾種引用?
  11. 調(diào)用System gc有什么用?JVM垃圾回收機制
  12. 了解JVM有什么用?又不能控制,又不好驗證
  13. Android Intent有什么作用?如何得到系統(tǒng)符合條件Activity個數(shù)?Intent過濾條件又什么
  14. 自定義View,事件分發(fā)機制?
  15. 內(nèi)存泄露如何檢測?
  16. 項目調(diào)試工具?
  17. 看你項目里有用到MQTT,為什么用?知道傳輸質(zhì)量嗎?又什么不好地方?
  18. 你項目里用到OkHttp和RxJava說說他們用到的設(shè)計模式
  19. RxJava又什么好處?有哪些坑?怎么解決?看你代碼里把json放在主線程如何優(yōu)化?如何統(tǒng)一在網(wǎng)絡(luò)錯誤時顯示toast?
最后編輯于
?著作權(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)容

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