Android 面試之某些公司的面試題
本文出自 Eddy Wiki ,轉載請註明出處:http://eddy.wiki/interview-company.html
本文從網路上收集了一些公司的 Android 面試題。
Alibaba
一面
- 說一下你怎麼學習安卓的?
- 專案中遇到哪些問題,如何解決的?
- Android事件分發機制?
- 三級快取底層實現?
- HashMap底層實現,hashCode如何對應bucket?
- Java的垃圾回收機制,引用計數法兩個物件互相引用如何解決?
- 用過的開源框架的原始碼分析
- Acticity的生命週期,Activity異常退出該如何處理?
- tcp和udp的區別,tcp如何保證可靠的,丟包如何處理?
二面:
- 標號1-n的n個人首尾相接,1到3報數,報到3的退出,求最後一個人的標號
- 給定一個字串,求第一個不重複的字元 abbcad -> c
新浪微博
一面
靜態內部類、內部類、匿名內部類,為什麼內部類會持有外部類的引用?持有的引用是this?還是其它?
靜態內部類:使用static修飾的內部類
匿名內部類:使用new生成的內部類
因為內部類的產生依賴於外部類,持有的引用是類名.this。
ArrayList和Vector的主要區別是什麼?
ArrayList在Java1.2引入,用於替換Vector
Vector:
執行緒同步
當Vector中的元素超過它的初始大小時,Vector會將它的容量翻倍
ArrayList:
執行緒不同步,但效能很好
當ArrayList中的元素超過它的初始大小時,ArrayList只增加50%的大小
Java中try catch finally的執行順序
先執行try中程式碼發生異常執行catch中程式碼,最後一定會執行finally中程式碼
switch是否能作用在byte上,是否能作用在long上,是否能作用在String上?
switch支援使用byte型別,不支援long型別,String支援在java1.7引入
Activity和Fragment生命週期有哪些?
Activity——onCreate->onStart->onResume->onPause->onStop->onDestroy
Fragment——onAttach->onCreate->onCreateView->onActivityCreated->onStart->onResume->onPause->onStop->onDestroyView->onDestroy->onDetach
onInterceptTouchEvent()和onTouchEvent()的區別?
onInterceptTouchEvent()用於攔截觸控事件
onTouchEvent()用於處理觸控事件
RemoteView在哪些功能中使用
APPwidget和Notification中
SurfaceView和View的區別是什麼?
SurfaceView中採用了雙快取技術,在單獨的執行緒中更新介面
View在UI執行緒中更新介面
講一下android中程式的優先順序?
前臺程式
可見程式
服務程式
後臺程式
空程式
tips:靜態類持有Activity引用會導致記憶體洩露
二面
- service生命週期,可以執行耗時操作嗎?
- JNI開發流程
- Java執行緒池,執行緒同步
- 自己設計一個圖片載入框架
- 自定義View相關方法
- http ResponseCode
- 外掛化,動態載入
- 效能優化,MAT
- AsyncTask原理
- 65k限制
- Serializable和Parcelable
- 檔案和資料庫哪個效率高
- 斷點續傳
- WebView和JS
- 所使用的開源框架的實現原理,原始碼
網易杭研
一面:
- 自我介紹
- Android中ClassLoader和java中有什麼關係和區別?
- 熟不熟jvm,說一下Jvm的自動記憶體管理?
- 語言基礎,String類可以被繼承嗎?為什麼?
- Final能修飾什麼?(當時我說class、field、method,他說還有嗎?然後又叫我不要在意,後來回想起,應該是問到我在引數裡面要不要用final,接下來是因為匿名內部類)
- Java中有記憶體洩露嗎?(先說本質,再結合handler+匿名內部類)當時如何分析的?
- 描述下Aidl?覺得aidl有什麼缺陷(這裡在這個問題上回答有欠缺)
- 評價一下我,如果順利進網易,需要往技術棧加什麼點儘快投入業務?
二面:
- 用過什麼開源,舉一個例子?(volley)
- Activity生命週期?情景:現在在一張act1點了新的act2,週期如何?
- Act的launchMode,有沒有結合專案用過(自己的程式鎖和微信的PC端登陸對比,不過我現在又發現,應該大約估計可能是動態載入的一個缺陷,如果有找到相關資訊,請務必跟我說。具體問題就是,當在PC端登入時,Android終端的微信會跳出,即使wechat的task不是在fore,當按下確認,返回的是wechat,而不是自己先前的app)
- View的繪製原理,有沒有用canvas自己畫過ui?
- 以後想做Android什麼方向?(中介軟體+SDK)
- 怎麼看待前端和後端?
- 如果學前端會如何學?
- 優缺點?興趣?
- 想不想來杭州?
- 評價一下我?往技術棧加什麼?
三面HR:
- 為什麼想來網易?
- 有投其他公司嗎?
- 網易最吸引你的是什麼?
- 想來杭州嗎?
- 評價一下我?
美團
一面
- 自我介紹
- 物件導向三大特性
- Java虛擬機器,垃圾回收
- GSON
- RxJava+Retrofit
- 圖片快取,三級快取
- Android啟動模式
- 四大元件
- Fragment生命週期,巢狀
- AsyncTask機制
- Handler機制
二面
- 面試官寫程式,看錯誤。
- 面試官寫程式讓判斷GC引用計數法迴圈引用會發生什麼情況
- Android程式間通訊,Binder機制
- Handler訊息機制,postDelayed會造成執行緒阻塞嗎?對記憶體有什麼影響?
- Debug和Release狀態的不同
- 實現stack 的pop和push介面 要求:
- 1.用基本的陣列實現
- 2.考慮範型
- 3.考慮下同步問題
- 4.考慮擴容問題
蜻蜓FM
一面
- Toolbar的使用
- 如何判斷本地快取的時候資料需要從網路端獲取
- 跨程式間通訊
- Handler訊息機制
- SharedPreference實現
- 快速排序
- 專案難點
豌豆莢三面
豌豆莢一面
- 介紹一下你的專案
- 網路框架的搭建
- 圖片載入框架的實現
- 寫個圖片瀏覽器,說出你的思路
- 上網站寫程式碼,如下: 有一個容器類 ArrayList,儲存整數型別的元素,現在要求編寫一個幫助類,類內提供一個幫助函式,幫助函式的功能是刪除 容器中<10的元素。
豌豆莢二面
- Activity的啟動模式
- 事件分發機制
- 寫程式碼,LeetCode上股票利益最大化問題
- 寫程式碼,劍指offer上第一次只出現一次的字元
豌豆莢三面
- 聊專案,聊大學做過的事
- 寫程式碼,反轉字串
- 寫程式碼,字串中出現最多的字元。
2016年4月某公司面試題及面試流程。
靜態內部類、內部類、匿名內部類,為什麼內部類會持有外部類的引用?持有的引用是this?還是其它?
- 靜態內部類:使用static修飾的內部類
- 內部類:就是在某個類的內部又定義了一個類,內部類所嵌入的類稱為外部類
- 匿名內部類:使用new生成的內部類
- 因為內部類的產生依賴於外部類,持有的引用是類名.this
ArrayList和Vector的主要區別是什麼?
ArrayList在Java1.2引入,用於替換Vector
Vector:
- 執行緒同步
- 當Vector中的元素超過它的初始大小時,Vector會將它的容量翻倍
ArrayList:
- 執行緒不同步,但效能很好
- 當ArrayList中的元素超過它的初始大小時,ArrayList只增加50%的大小
Java中try catch finally的執行順序
先執行try中程式碼發生異常執行catch中程式碼,最後一定會執行finally中程式碼
switch是否能作用在byte上,是否能作用在long上,是否能作用在String上?
switch支援使用byte型別,不支援long型別,String支援在java1.7引入
Activity和Fragment生命週期有哪些?
- Activity——onCreate->onStart->onResume->onPause->onStop->onDestroy
- Fragment——onAttach->onCreate->onCreateView->onActivityCreated->onStart->onResume->onPause->onStop->onDestroyView->onDestroy->onDetach
onInterceptTouchEvent()和onTouchEvent()的區別?
onInterceptTouchEvent()用於攔截觸控事件
onTouchEvent()用於處理觸控事件
RemoteView在哪些功能中使用
APPwidget和Notification中
SurfaceView和View的區別是什麼?
SurfaceView中採用了雙快取技術,在單獨的執行緒中更新介面
View在UI執行緒中更新介面
講一下android中程式的優先順序?
- 前臺程式
- 可見程式
- 服務程式
- 後臺程式
- 空程式
程式碼查錯題,沒記下來
tips:靜態變數持有Activity引用會導致記憶體洩露
某公司面試題
一面
- service生命週期,可以執行耗時操作嗎?
- JNI開發流程
- Java執行緒池,執行緒同步
- 自己設計一個圖片載入框架
- 自定義View相關方法
- http ResponseCode
- 外掛化,動態載入
- 效能優化,MAT
- AsyncTask原理
- 65k限制
- Serializable和Parcelable
- 檔案和資料庫哪個效率高
- 斷點續傳
- WebView和JS
Android基礎——Service
Android基礎——IntentService
Android開發指導——Service
Android開發指導——繫結Service
Android開發指導——程式間通訊AIDL
Android中Java和JavaScript互動
WebView 遠端程式碼執行漏洞淺析
WebView中的Java與JavaScript提供【安全可靠】的多樣互通方案
二面
- 所使用的開源框架的實現原理,原始碼
- 沒看過,被pass了
- 去面試之前把用到的開源框架原始碼分析一定要看看啊
相關文章
- Android面試題之Fragment篇Android面試題Fragment
- Android面試題之Android中的設計模式Android面試題設計模式
- 大公司的PHP面試題PHP面試題
- Android面試題Android面試題
- Android面試題之Gradle配置篇Android面試題Gradle
- 面試必刷:最有用的Mysql面試題,面試了無數公司總結的MySql面試題
- 【面試】面試題之汽水空瓶子問題面試題
- 那些古怪的科技公司面試問題面試
- Android面試題收集Android面試題
- Android面試題(四)Android面試題
- 【Android面試題】2Android面試題
- Android面試之Java基礎筆試題Android面試Java筆試
- Android 面試題,百度,小米,阿里面試題Android面試題阿里
- 前端面試季 - 12家公司面試題全揭祕前端面試題
- 前端面試季 – 12家公司面試題全揭祕前端面試題
- 一家公司的Java面試題Java面試題
- Android面試之網路Android面試
- Android基礎面試題Android面試題
- Android面試問題整理Android面試
- Android面試題(轉載)Android面試題
- Android面試題記錄Android面試題
- android 面試題總結Android面試題
- Android 面試題彙總Android面試題
- 各大網際網路公司面試流程及面試題彙總面試題
- 大型網際網路公司必考java面試題與面試技巧Java面試題
- 前端面試之webpack面試常見問題前端面試Web
- 前端面試指南之JS面試題總結前端JS面試題
- Android面試送分題:Android面試真題解析火爆全網,建議收藏Android面試
- Android 面試之單例模式Android面試單例模式
- 面試題總結-Android部分面試題Android
- Android史上最全面試題Android面試題
- Android面試題——進階篇Android面試題
- Android面試題---真實分享Android面試題
- Android拿高薪面試題必看Android高薪面試題
- 安卓面試題 Android interview questions安卓面試題AndroidView
- Android面試題-2013Android面試題
- 分享幾個重要的Android面試題Android面試題
- 做好面試的準備之—常見面試題(適合初級、中級的面試者)面試題