二面之後等了大約一個星期,收到了阿里的現場面試邀請,很開心地趕往了現場,開始了第三次技術面試。進入阿里辦公樓,在休息區等候了一段時間,便開始了自己的第三次技術面試。三面面試官給人感覺很nice,問題如下:
1、說一下常見的多線程設計模式(之前我正好在我的博客整理過一本名叫Java多線程設計模式的書,於是便說了幾個,但是說的不是很全);
2、Java虛擬機內存模型;
3、volatile關鍵字的作用;
4、什麼情況下使用volatile是線程安全的(我感覺面試官的意思是volatile保證不保證操作的原子性);
5、如何自己設計一個生產者消費者模式(我覺得關鍵是阻塞隊列的實現,把這個說了說);
6、BlockingQueue實現類有哪些;
7、TreeSet實現了哪些接口,如果需要對他的元素進行排序,元素需要滿足什麼條件。對於TreeSet的add方法放入重複元素會返回true還是false;
8、JDBC的過程(這個問題竟然沒有答上來...);
9、在紙上手寫一個樹的深度優先遍歷算法(面試官表示可以使用遞歸,那實際上可以用幾行代碼就解決了)。
感覺自己答得比較一般,有的問題答得不是很好,但是有的問題答得比較深。結束第三輪面試之後面試官表示再等一會兒,我就意識到還有HR面了。
果然等了一會兒就等到了HR面。和HR聊得很開心,涉及到生活的很多方面,自己也說了挺多,問題如下:
1、說說你的學習過程;
2、你爲什麼做了這些項目,得到了什麼;
3、你印象最深刻得項目是哪一個,爲什麼;
4、這些項目是你和誰做的,在什麼情況下做的這些項目;
5、你家鄉在哪;
6、你準備考研嗎,爲什麼;
7、你近段時間在讀哪些書,得到了些什麼;
8、你接下來準備如何學習;
9、你能去杭州實習嗎。
HR面完沒有馬上出結果,表示結果會在兩週之內通知。
慢慢等候。
----------------------------------------------------------------------------(我是華麗麗的分割線)
已於2018/4/17收到並且接受了阿里offer,開心。