2021Java高級螞蟻金服三面,終進大廠了!

螞蟻金服一面:

下午杭州的電話,問有沒有空,果斷有空,雖然感覺略顯緊張,有點懵逼。

面試的題目:

  1. HashMap和Hashtable的區(qū)別
  2. 實現(xiàn)一個保證迭代順序的HashMap
  3. 說一說排序算法,穩(wěn)定性,復(fù)雜度
  4. 說一說GC
  5. 可以保證的實習時長
  6. 職業(yè)規(guī)劃

整體來說,一面的基礎(chǔ)性問題比較多,所以博主基本都答出來了,準備過還是有些用處的。所以一面完了感覺還不錯,接著第二天下午就二面了。

Java程序員秋招三面螞蟻金服,我總結(jié)了所有面試題,也不過如此

螞蟻金服二面

二面是我最慌的面試,因為二面是最關(guān)鍵的,是最大的主管面試,所以非常關(guān)鍵,整體來說,二面的節(jié)奏非???,和一面完全不同,面試官很希望我言簡意賅的說完答案,所以面的不算很好,當時完了又以為GG了,好在最后還是幸運的過了,面試問題如下:

  1. 自我介紹。
  2. JVM如何加載一個類的過程,雙親委派模型中有哪些方法?
  3. HashMap如何實現(xiàn)的?
  4. HashMap和Concurrent HashMap區(qū)別, Concurrent HashMap 線程安全嗎, Concurrent HashMap如何保證 線程安全?
  5. HashMap和HashTable 區(qū)別,HashTable線程安全嗎?
  6. 進程間通信有哪幾種方式?
  7. JVM分為哪些區(qū),每一個區(qū)干嗎的?
  8. JVM如何GC,新生代,老年代,持久代,都存儲哪些東西?
  9. GC用的引用可達性分析算法中,哪些對象可作為GC Roots對象?
  10. 快速排序,過程,復(fù)雜度?
  11. 什么是二叉平衡樹,如何插入節(jié)點,刪除節(jié)點,說出關(guān)鍵步驟。
  12. TCP如何保證可靠傳輸?三次握手過程?
  13. TCP和UDP區(qū)別?
  14. 滑動窗口算法?
  15. Linux下如何進行進程調(diào)度的?
  16. Linux下你常用的命令有哪些?
  17. 操作系統(tǒng)什么情況下會死鎖?
  18. 常用的hash算法有哪些?
  19. 什么是一致性哈希?
  20. 如何理解分布式鎖?
  21. 數(shù)據(jù)庫中的范式有哪些?
  22. 數(shù)據(jù)庫中的索引的結(jié)構(gòu)?什么情況下適合建索引?
  23. Java中的NIO,BIO,AIO分別是什么?
  24. 用什么工具調(diào)試程序?JConsole,用過嗎?
  25. 現(xiàn)在JVM中有一個線程掛起了,如何用工具查出原因?
  26. 線程同步與阻塞的關(guān)系?同步一定阻塞嗎?阻塞一定同步嗎?
  27. 同步和異步有什么區(qū)別?
  28. 線程池用過嗎?
  29. 如何創(chuàng)建單例模式?說了雙重檢查,他說不是線程安全的。如何高效的創(chuàng)建一個線程安全的單例?
  30. concurrent包下面,都用過什么?
  31. 常用的數(shù)據(jù)庫有哪些?redis用過嗎?
  32. 了解hadoop嗎?說說hadoop的組件有哪些?hdfs,hive,hbase,zookeeper。說下mapreduce編程模型。
  33. 你知道的開源協(xié)議有哪些?
  34. 你知道的開源軟件有哪些?
  35. 你最近在看的書有哪些?
  36. 你有什么問題要問我嗎?
  37. 了解哪些設(shè)計模式?說說都用過哪些設(shè)計模式
  38. 如何判斷一個單鏈表是否有環(huán)?
  39. 操作系統(tǒng)如何進行分頁調(diào)度?
  40. 匿名內(nèi)部類是什么?如何訪問在其外面定義的變量?

二面面試官問的很急,我答的也快,所以有兩個問題答的不好,但是面試官讓我覺得有一種肅然起敬的感覺,因為他說話比較快,但是都能說到點子上,最關(guān)鍵的說的話非常讓人容易接受。

二面過了,當天晚上我就接到了三面的電話(阿里的效率真的讓我瞠目結(jié)舌)

Java程序員秋招三面螞蟻金服,我總結(jié)了所有面試題,也不過如此

螞蟻金服三面

三面已經(jīng)是交叉面試了,基本都圍繞我的項目展開,我經(jīng)過前面幾次的面試之后,這個時候已經(jīng)擁有了很高的面試經(jīng)驗值了,所以三面的時候我一點不慌了,回答問題非常穩(wěn)重,三面的問題如下:

  1. 自我介紹,做過什么項目。
  2. java虛擬機的區(qū)域如何劃分,每一個區(qū)的動能,這一塊自由發(fā)揮。
  3. 雙親委派模型中,從頂層到底層,都是哪些類加載器,分別加載哪些類?
  4. 有沒有可能父類加載器和子類加載器,加載同一個類?如果加載同一個類,該使用哪一個類?
  5. HashMap的結(jié)構(gòu),get(),put()是如何實現(xiàn)的?HashMap有哪些問題?
  6. ConcurrentHashMap的get(),put(),又是如何實現(xiàn)的?ConcurrentHashMap有哪些問題? ConcurrentHashMap的鎖是讀鎖還是寫鎖?
  7. HashMap與HashTable的區(qū)別
  8. sleep()和wait()分別是哪個類的方法,有什么區(qū)別?synchronized底層如何實現(xiàn)的?用在代碼塊和方法上有什么區(qū)別?
  9. 什么是線程池?如果讓你設(shè)計一個動態(tài)大小的線程池,如何設(shè)計,應(yīng)該有哪些方法?
  10. 什么是死鎖?JVM線程死鎖,你該如何判斷是因為什么?如果用VisualVM,dump線程信息出來,會有哪些信息?這一塊問的很多…問的我懵了. 因為并沒有實際操作過 = =
  11. 查看jvm虛擬機里面堆、線程的信息,你用過什么命令?我只用過圖形界面VisualVM。。。
  12. 垃圾回收算法有哪些?CMS知道嗎?如何工作的?
  13. 數(shù)據(jù)庫中什么是事務(wù)?事務(wù)的隔離級別?事務(wù)的四個特性?什么是臟讀,幻讀,不可重復(fù)讀?
  14. 數(shù)據(jù)庫索引的結(jié)構(gòu)有哪些?我說B樹和B+樹,他說只有這兩個嗎。我又說全文倒排索引。然后介紹B+樹的結(jié)構(gòu)。
  15. 數(shù)據(jù)庫中的分頁查詢語句怎么寫?
  16. 什么是一致性哈希?用來解決什么問題?
  17. Redis的存儲結(jié)構(gòu),或者說如何工作的,與mysql的區(qū)別?有哪些數(shù)據(jù)類型?
  18. 項目中用到redis,為什么選用redis,了解其他NoSQL數(shù)據(jù)庫嗎?在你的項目中是如何運用redis的?key是什么,value是什么?
  19. 歸并排序的過程?時間復(fù)雜度?空間復(fù)雜度?
  20. 你平常用什么排序?快速排序。說說在那些場景下適用,哪些場景下不適用。
  21. 你在項目中做什么?因為我用到Solr,他就問我Solr是如何工作的?

最后

我還為大家準備了一套體系化的架構(gòu)師學習資料包以及BAT面試資料,供大家參考及學習,戳這里免費領(lǐng)取

已經(jīng)將知識體系整理好(源碼,筆記,PPT,學習視頻)免費領(lǐng)取。

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述






get方式:

【編程電子書,持更中...】

更多資源白嫖網(wǎng)站:

全網(wǎng)免費Java資源下載SpringBoot、Spring、Mybatis、Redis、RabbitMQ、SpringCloud、高并發(fā)(持續(xù)更新)

?著作權(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)容