
Java
Java 基礎這部分一些簡單的問題就直接沒有放上來,
基礎:
- Java 反射?反射有什么缺點?你是怎么理解反射的(為什么框架需要反射)?
- 談談對 Java 注解的理解,解決了什么問題?
- 內部類了解嗎?匿名內部類了解嗎?
- BIO和NIO區別,4核cpu,100個http連接,用BIO和NIO分別需要多少個執行緒
- HashMap的負載因子,

jvm:
- jvm 記憶體結構
- jvm 調優引數
- 什么是類加載?
- 何時類加載?
- java的類加載流程?
- 知道哪些類加載器,類加載器之間的關系?
- 類加載器之間的關系?
- 類加載器的雙親委派 (結合tomcat說一下雙親委派)
- 為什么需要雙親委派
- Java記憶體模型
- 堆疊中存放什么資料,堆中呢?
- 大物件放在哪個記憶體區域
- 堆區如何分類
- 垃圾回收有哪些演算法
- GC的全流程
- GC中老年代用什么回收方法?

JVM面試題決議

多執行緒:
- Java執行緒池有哪些引數?阻塞佇列有幾種?拒絕策略有幾種?
- 死鎖

多執行緒面試題決議
設計模式:
- 閱讀Spring原始碼的時候什么設計模式最讓你影響深刻?如何使用?
- 單例模式,單例模式的使用場景
- 觀察者模式,觀察者模式的使用場景

設計模式決議

Spring
- spring boot和spring的區別
- ioc 和 aop(ioc流程、aop實作原理)、spring aop例外處理、當一段代碼被try catch后再發生例外時,aop的例外通知是否執行,為什么?
- spring bean的生命周期說一下
- spring data jpa底層是什么?
- hibernate和mybatis區別
- spring boot 過濾器
- spring boot 攔截器
- Spring動態代理默認用哪一種
- 寫出spring jdk動態代理的實作,
- 畫出spring boot處理一個http請求的全程序

spring 面試題決議
推薦
- 手寫實作Spring核心功能: github.com/jinzzzzz/sp…
權限認證
- 認證 (Authentication) 和授權 (Authorization)的區別是什么?
- 什么是Cookie ? Cookie的作用是什么?如何在服務端使用 Cookie ?
- Cookie 和 Session 有什么區別?如何使用Session進行身份驗證?
- 如果沒有Cookie的話Session還能用嗎?
- 為什么Cookie 無法防止CSRF攻擊,而token可以?
- 什么是 Token?什么是 JWT?如何基于Token進行身份驗證?
- 什么是OAuth 2.0?
- 什么是SSO(單點登錄)

微服務/分布式
- 為什么要網關?
- 限流的演算法有哪些?
- 為什么要分布式 id ?分布式 id 生成策略有哪些?
- 了解RPC嗎?有哪些常見的 RPC 框架?
- 如果讓你自己設計 RPC 框架你會如何設計?
- Dubbo 了解嗎?Spring Cloud 了解嗎?

微服務/分布式面試題決議

資料庫
- 非關系型資料庫和關系型資料庫的區別?
- 事務的四大特性
- MySQL 事務隔離級別?默認是什么級別?
- 樂觀鎖與悲觀鎖的區別
- 資料庫兩種存盤引擎的區別
- 最左前綴匹配原則及它的原因
- 大表優化的思路
- where和having的區別
- 分庫分表
- explain 命令

資料庫面試題決議
索引
- 如何加快資料庫查詢速度
- 聚集索引和非聚集索引的區別
- 什么時候不該使用索引?
- 索引底層的資料結構?
- B+樹做索引比紅黑樹好在哪里?

資料庫索引面試題決議
Redis:
- 專案中 redis 是怎么用的?解決了什么問題?
- 說一下有快取情況下查詢的流程以及有快取情況下修改的流程,
- redis有哪些資料結構
- redis記憶體滿了怎么辦
- redis記憶體淘汰演算法除了lru還有哪些
- 分布式快取可能出現的問題
- 快取穿透問題
網路
- 計算機網路的一些常見狀態碼
- ping 所使用的協議
- TCP的三次握手與四次揮手的內容
- TCP為什么連接是三次握手而斷開是四次握手
- TCP與UDP的區別及使用場景
- 一次完整的HTTP請求所經的步驟
- http 如何保存登錄資訊(沒太搞懂意思)
- Cookie 和 Session的關系

網路面試題決議
演算法和資料結構
演算法
- LRU 演算法了解嗎?你能實作一個嗎?
- 寫排序演算法(快排、堆排)
資料結構
- 布隆過濾器了解嗎?

演算法與資料結構面試決議
設計題
- 假如有10億個數,只有一個重復,記憶體只能放下5億個數,怎么找到這個重復的數字?
- 如何設計一個秒殺系統(服務端、資料庫、分布式)?分布式系統的設計?
- 有一個服務器專門接收大量請求,怎么設計?
- 如果讓你自己設計 RPC 框架你會如何設計?
- 怎么快速出現一個stackoverflow錯誤?
其他問題
- 自我介紹,
- 說說你的專案中的亮點有哪些,
- 畫一下你的專案的架構圖,
- Restful 了解嗎?簡單說一下自己對它的認識,如果我要回傳一個 boolean 型別的資料怎么辦?
經驗總結
- 多面試,不要害怕失敗,多總結經驗,
- 盡早準備,不論是找作業前、面試前還是面試后,
- 熟悉自己的簡歷,
- 電話和視頻面試很平常,面試前提前準備一下,
- 堅持!offer 雖然可能會遲到,但是只要不放棄,就一定不會缺席,
答案獲取
這些面試題的答案,我已經整理成為一份Java面試檔案中了

Java面試檔案

Java面試檔案
每個章節下面都有一個詳細的知識點,有需要只需要你給我一點支持即可免費獲取道該檔案

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/131772.html
標籤:AI
上一篇:這一篇“秋天里的第一份Java面試題合集”滿滿干貨,嘔心瀝血!建議收藏
下一篇:面完阿里、美團后,我總結出大廠常問面試真題及決議:java集合+spring+設計模式+并發編程+MyBatis 等。。。。
