前言
如今是求職招聘高峯,不少小夥伴還在找工做中,抓住最後的尾巴了!java
文末月亮總結了一份BAT(阿里、百度等)資深Java相關的面試題答案合集給到你們,仔細看哦 。程序員
該板塊的各面試章節,後續會持續迭代更新最新一線互聯網公司的面試題目,建議收藏該頁面,不按期更新查看~面試
Java虛擬機(JVM)
- JVM內存模型結構方法區和直接內存何時會oom?
- JVM收集器G1的內存模型和CMS的內存模型有什麼不一樣?
- jvm調優用過嗎?
- 如何查看java內存使用狀況(jconsole、命令jmap、jstack等等)
Java集合類
- Arraylist、linkedlist差別,應用場景;
- HashMap在JDK1.8有哪些改動?
- HashCurrentMap和HashMap的區別在哪裏?
- Hashmap何時使用紅黑樹?
Java多線程
- 線程的幾種狀態,請畫出具體的狀態流轉圖?
- Java wait、sleep的區別?
- volatile如何實現指令重排序?
- 線程池中的阻塞隊列若是滿了怎麼辦(拒絕策略)?
- Synchronized和AQS異同,AQS公平非公平如何實現;
- 多線程裏面對一個整型作加減爲啥不能用volatile;
- voliatile和synchonized有什麼區別?
- synchonized和jdk提供的Lock包又有什麼區別?
必問多線程面試題總結,「金三銀四」不留遺憾算法
算法
- 二叉樹寬度遍歷
- 紅黑樹
- 數據結構的話,鏈表,樹,圖的基本知識得懂
- 瞭解樹的先序遍歷,中序遍歷,後序遍歷。圖的廣度優先搜索算法,深度優先搜索算法。
Spring
- Bean的生命週期;
- 什麼是DI、爲何DI、DI的類型(構造器注入、方法注入);
- Spring boot和spring的差異,tomcat如何嵌入spring boot的/spring boot中的tomcat是如何啓動的;
- Spring如何解決循環依賴問題
最全Spring面試題總結,「金三銀四」披件外衣不怕冷!spring
數據庫
- Join(inner、left、right)的區別?
- Union和union all區別?
- ACID,具體是啥意思?
- 事務隔離級別?幻讀和不可重複讀的區別?
- Mysql和mongodb有啥區別?
計算機網路
- RPC和http的區別
- 詳細描述TCP四次揮手過程
Java中間件
- 秒殺項目會使用到哪些中間件?
- 爲何Redis是單線程?
- 如何保證Redis和數據庫雙寫一致?
- 如何設計一個消息隊列中間件?
- 分庫分表後,id主鍵如何處理?
- 如何設計一個相似Dubbo的RPC?
最後
月亮針對於上面的面試題我總結出了互聯網公司java程序員面試涉及到的絕大部分面試題及答案作成了文檔和架構視頻資料免費分享給你們(包括Dubbo、Redis、Netty、zookeeper、Spring cloud、分佈式、高併發等架構技術資料)免費領取!sql
資料領取方式:轉發+點擊連接加入羣聊【互聯網java高級架構536172545】:https://jq.qq.com/?_wv=1027&k=5SX65F0mongodb