「Java學習+面試指南」一份涵蓋大部分 Java 程序員所須要掌握的核心知識。準備 Java 面試,首選 JavaGuide!git
這是一位熱心讀者分享的實習面經。程序員
一、自我介紹面試
二、介紹一下簡歷上的項目,項目是否上線,項目持續時間?緩存
三、講了一下本身運營的公衆號?服務器
四、項目中Redis的具體解決方案?markdown
五、註冊登陸是怎麼實現的?數據結構
六、微服務用了幾臺服務器,總共有幾個微服務,微服務的上線下線怎麼作的?多線程
七、RPC項目,寫了哪些功能?ide
八、RPC中序列化是怎麼實現的?微服務
九、序列化的選擇考慮的維度有哪些?
十、RPC從A調用B的總體具體流程是怎樣的?
十一、序列化和反序列化你是如何實現的?
十二、動態代理你是使用哪一種?cglib和jdk動態代理的差異?
而後瞎扯了一會...
1三、MySQL事務介紹一下?
1四、MySQL的隔離級別具體說說?
1五、MySQL和緩存的數據一致性怎麼保證的?
1六、Docker有了解嗎?
1七、線程的幾個狀態,block和wait狀態有什麼區別?什麼狀況下會block和wait
1八、ConcurrentHashMap、HashMap和HashTable有什麼區別?
1九、虛擬機的類加載的詳細過程?
20、你是自學的嗎?你是從哪找的資料?而後繼續閒聊,訂閱的博主有哪些?
2一、你有什麼想問的嗎?
一、自我介紹
二、作過的有意義的項目(最好是上線項目)、比較厲害的點在哪?你具體實現了哪些功能?
三、對Python有多少了解?(分析了一下Java和Python)
四、寫一個數據結構:1.先進先出 2.入隊列與出隊列時間複雜度O(1) 3.是固定長度的 4.不能用鏈表
五、Java中的鎖有哪些?具體介紹一下
六、Java多線程你是怎麼寫的?具體有哪些?
七、單例模式你是怎麼加鎖的?
八、可重入鎖具體是什麼意思?
九、接觸過大數據嗎?
十、spark瞭解過嗎?
十一、公衆號裏面寫些什麼?最火的一篇文章、最有技術含量的一篇文章
十二、你最近看的Java的書籍有哪些?有什麼收穫?
1三、中間件有了解嗎?
1四、介紹一下Redis的主從複製
1五、你有什麼想問的嗎?
一、自我介紹
二、學習經歷感悟
....
大概也有20-30分鐘,具體忘記了。
總體流程感受都很是的好,蘑菇街nb
整個面試偏向於項目和實戰,八股文比重比較少,面試過程其實跟聊天差很少,聊得還挺開心,因此好像沒手撕代碼,幸運!