首頁>科技>

2020年的春招太難了,很多小夥伴說不知道怎樣才能順利通過面試,明明這些技術性問題自己也清楚,但是每次面試官問到的時候還是答不上來,再或者說,之前有學過這一類的,或者做過同類型的專案,但是就是很擔心,不知道大廠到底問的一些什麼問題,今天我就將我的經歷整理出來,供大家參考學習。 碼字不易,希望大家也能點點關注!非常感謝!

一面(1hour):

1、自我介紹

2、專案介紹,技術點相關。

3、C++和Java區別,GC

C++不熟,只能說記憶體管理相關的問題,所以就問到了GC。然後說分代收集演算法。老年代擔保、元資料區從JVM移到了本地記憶體這些。

4、執行緒相關,Runnable和Thread的區別。

Thread類是實現了Runnable介面,平時使用起來可以使用start方法呼叫。執行緒池基本傳Runnable物件,平時也是執行緒池用的多,所以具體相關不太熟。

5、執行緒池

6、synchronized,volatile

7、繼承相關,多重繼承和介面

8、網路程式設計

9、UPD,TCP區別

10、最大的優點

11、最大的缺點

12、演算法,二叉樹中序遍歷,真是早起毀一天,竟然沒撕出來,我真想給自己兩耳光。不過面試官給我總結的很好,說要利用棧的特性,先進後出,所以要保證左子樹先進根結點再進,這麼思考之後就順利了很多。

二面(40mins):

1、介紹一下專案

2、Android四大元件,詳細講一下。

3、Launcher啟動APP的全過程。

icon存入口Activity資訊

AMS通知Launcher去pause。

Launcher通知AMS已經pause

AMS檢查程序是否已經啟動,如果不啟動則啟動程序。並且呼叫ActivityThread的main方法。

啟動之後通知AMS已經啟動

然後AMS將入口Activity資訊傳遞給APP。

APP啟動對應入口Activity,並且建立對應上下文並且呼叫Activity的onCreate方法。

4、程序間通訊,AIDL,Binder。扯了一會說程序間通訊平時怎麼做的,就說了一下AIDL相關的Demo實現什麼的。說到了自己程式裡面有拉起微信的這個功能(也就是廣播)。

5、設計模式了解嗎,平時用過哪些設計模式。

6、演算法題:輸入一個數n,代表有n個點,一個二維陣列,二維陣列代表相連的點,要求輸出連通起來的點。

如果n=6,陣列假設是{{1,2},{2,3},{4,5}},則輸出{{1,2,3},{4,5},{6}}

三面(<30分鐘):

1、自我介紹

2、公司實習期專案

說了RePlugin框架原理,說了ffmpeg動態連結庫開發方面的失敗經歷,說了Android的適配,和最近影響到的AndroidQ相關新特性的適配。

3、自己大學生活中攻克的最難的技術難點。

4、什麼情況下會壓力特別大,怎麼處理的。

5、職業規劃

最新評論
  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 直播正當“時”,借力直播+電商吸金4.9億