Java Java 基礎這部分一些簡單的問題就直接沒有放上來。 基礎: Java 反射?反射有什么缺點?你是怎么理解反射的(為什么框架需要反射)? 談談對 Java 注解的理解,解決了什么問題? 內部類了解嗎?匿名內部類了解嗎? BIO和NIO區(qū)別,4核cpu,100個http連接,用BIO和NIO分別需要多少個線程 HashMap的負載因子。 jvm: jvm 內存結構 jvm 調優(yōu)參數(shù) 什么是類加載? 何時類加載? java的類加載流程? 知道哪些類加載器。類加載器之間的關系? 類加載器之間的關系? 類加載器的雙親委派(結合tomcat說一下雙親委派) 為什么需要雙親委派 Java內存模型 棧中存放什么數(shù)據(jù),堆中呢? 大對象放在哪個內存區(qū)域 堆區(qū)如何分類 垃圾回收有哪些算法 GC的全流程 GC中老年代用什么回收方法? JVM面試題解析 多線程: Java線程池有哪些參數(shù)?阻塞隊列有幾種?拒絕策略有幾種? 死鎖 多線程面試題解析 設計模式: 閱讀Spring源碼的時候什么設計模式最讓你影響深刻?如何使用? 單例模式,單例模式的使用場景 觀察者模式,觀察者模式的使用場景 設計模式解析 spring spring boot和spring的區(qū)別 ioc 和 aop(ioc流程、aop實現(xiàn)原理)、spring aop異常處理、當一段代碼被try catch后再發(fā)生異常時,aop的異常通知是否執(zhí)行,為什么? spring bean的生命周期說一下 spring data jpa底層是什么? hibernate和mybatis區(qū)別 spring boot 過濾器 spring boot 攔截器 Spring動態(tài)代理默認用哪一種 寫出spring jdk動態(tài)代理的實現(xiàn)。 畫出spring boot處理一個http請求的全過程 spring 面試題解析 推薦 手寫實現(xiàn)Spring核心功能: github.com/jinzzzzz/sp… 權限認證 認證 (Authentication) 和授權 (Authorization)的區(qū)別是什么? 什么是Cookie ? Cookie的作用是什么?如何在服務端使用 Cookie ? Cookie 和 Session 有什么區(qū)別?如何使用Session進行身份驗證? 如果沒有Cookie的話Session還能用嗎? 為什么Cookie 無法防止CSRF攻擊,而token可以? 什么是 Token?什么是 JWT?如何基于Token進行身份驗證? 什么是OAuth 2.0? 什么是SSO(單點登錄) 為什么要網關? 限流的算法有哪些? 為什么要分布式 id ?分布式 id 生成策略有哪些? 了解RPC嗎?有哪些常見的 RPC 框架? 如果讓你自己設計 RPC 框架你會如何設計? Dubbo 了解嗎?Spring Cloud 了解嗎? 微服務/分布式面試題解析 數(shù)據(jù)庫 非關系型數(shù)據(jù)庫和關系型數(shù)據(jù)庫的區(qū)別? 事務的四大特性 MySQL 事務隔離級別?默認是什么級別? 樂觀鎖與悲觀鎖的區(qū)別 數(shù)據(jù)庫兩種存儲引擎的區(qū)別 最左前綴匹配原則及它的原因 大表優(yōu)化的思路 where和having的區(qū)別 分庫分表 explain 命令 數(shù)據(jù)庫面試題解析 索引 如何加快數(shù)據(jù)庫查詢速度 聚集索引和非聚集索引的區(qū)別 什么時候不該使用索引? 索引底層的數(shù)據(jù)結構? B+樹做索引比紅黑樹好在哪里? 數(shù)據(jù)庫索引面試題解析 Redis: 項目中 redis 是怎么用的?解決了什么問題? 說一下有緩存情況下查詢的流程以及有緩存情況下修改的流程。 redis有哪些數(shù)據(jù)結構 redis內存滿了怎么辦 redis內存淘汰算法除了lru還有哪些 分布式緩存可能出現(xiàn)的問題 緩存穿透問題 網絡 計算機網絡的一些常見狀態(tài)碼 ping 所使用的協(xié)議 TCP的三次握手與四次揮手的內容 TCP為什么連接是三次握手而斷開是四次握手 TCP與UDP的區(qū)別及使用場景 一次完整的HTTP請求所經的步驟 http 如何保存登錄信息(沒太搞懂意思) Cookie 和 Session的關系 網絡面試題解析 算法和數(shù)據(jù)結構 算法 LRU 算法了解嗎?你能實現(xiàn)一個嗎? 寫排序算法(快排、堆排) 數(shù)據(jù)結構 布隆過濾器了解嗎? 算法與數(shù)據(jù)結構面試解析 設計題 假如有10億個數(shù),只有一個重復,內存只能放下5億個數(shù),怎么找到這個重復的數(shù)字? 如何設計一個秒殺系統(tǒng)(服務端、數(shù)據(jù)庫、分布式)?分布式系統(tǒng)的設計? 有一個服務器專門接收大量請求,怎么設計? 如果讓你自己設計 RPC 框架你會如何設計? 怎么快速出現(xiàn)一個stackoverflow錯誤? 其他問題 自我介紹。 說說你的項目中的亮點有哪些。 畫一下你的項目的架構圖。 Restful 了解嗎?簡單說一下自己對它的認識,如果我要返回一個 boolean 類型的數(shù)據(jù)怎么辦? 經驗總結 多面試,不要害怕失敗,多總結經驗。 盡早準備,不論是找工作前、面試前還是面試后。 熟悉自己的簡歷。 電話和視頻面試很平常,面試前提前準備一下。 堅持!offer 雖然可能會遲到,但是只要不放棄,就一定不會缺席。 這些面試題的答案,我已經整理成為一份Java面試文檔中了 Java面試文檔 Java面試文檔 每個章節(jié)下面都有一個詳細的知識點,有需要只需要你給我一點支持即可免費獲取道該文檔 |
|