java面試準備

一介桃白白發表於2024-05-08

黑馬面試影片:https://www.bilibili.com/video/BV1yT411H7YK/?p=3&spm_id_from=pageDriver&vd_source=5f1d3bd68827f2b51120309172941a9e

面試大全:https://knife.blog.csdn.net/article/details/121219272

一、JDK8新特性?

介面允許default和static;lambda;stream;時間新API(LocalDateTime等)CompletableFuture等

二、集合

1、常見的集合有哪些?

三、鎖

1、什麼時候會死鎖?

四、多執行緒

多執行緒處理方案案例:https://learn.skyofit.com/archives/481

多執行緒相關面試題:https://blog.csdn.net/weixin_33712987/article/details/89686009

1、執行緒和程序的區別?

2、實現執行緒有哪幾種方式?

3、什麼是死鎖?如何避免死鎖?

4、你遇到過哪些多執行緒的問題?都是如何解決的?

5、執行緒池的使用場景?

五、MySql

1、資料庫最佳化方式

建立索引、欄位冗餘(減少聯表查詢)、使用快取、讀寫分離(寫入主庫 讀從分庫讀 資料庫同步機制)、分庫分表(垂直拆分:不同模組拆分為多個資料庫。水平拆分:當無法垂直拆分且資料量過大時使用。 分庫分表之前,不要為分而分,先盡力去做力所能及的事情,例如:升級硬體、升級網路、讀寫分離、索引最佳化等等。當資料量達到單表的瓶頸時候,再考慮分庫分表。)

2、分庫分表的中介軟體?

Sharding-JDBC、Mycat

六、設計模式

1、專案裡用到了哪些設計模式,怎麼用的?

https://www.bilibili.com/video/BV1hz421S7bC/?spm_id_from=333.337.search-card.all.click&vd_source=5f1d3bd68827f2b51120309172941a9e

https://www.bilibili.com/video/BV1Kt42187t8/?spm_id_from=333.337.search-card.all.click&vd_source=5f1d3bd68827f2b51120309172941a9e

https://blog.csdn.net/weixin_43709538/article/details/135383377

2、單例模式寫法 https://learn.skyofit.com/archives/278

3、手寫雙重檢驗單例(為什麼用volatile,為什麼兩次if判斷)

4、靜態代理與動態代理區別?

七、Spring相關

1、SpringBoot如何向容器註冊bean?

6種方法:https://learn.skyofit.com/archives/2843

2、Spring-bean的生命週期?

簡單來說Spring Bean的生命週期就是bean從被初始化到銷燬的過程。 Spring Bean的生命週期分為五個階段:例項化 Instantiation、屬性賦值 Populate、初始化 Initialization、使用 In use、銷燬 Destruction

八、Redis相關

1、Redis為什麼那麼快?

2、Redis資料型別及其使用場景?

3、Redis持久化AOF,RDB區別?

4、穿透、無底洞、雪崩、擊穿 解決方案?

5、記憶體回收機制是怎樣的?(或者說:淘汰策略)?

6、Redis與資料庫如何同步?各個方式的缺點是什麼?

7、秒殺的時候怎麼使用Redis?

九、微服務相關

分散式事務:https://blog.csdn.net/u011397981/article/details/129829072

1、springcloud常見的元件有哪些?

2、註冊中心eureka和nacos區別?

3、ribbon負載均衡?

十、訊息中介軟體MQ、Kafka

1、

2、集合、鎖、多執行緒相關問題?

4、SQL怎麼最佳化?
5、Redis相關問題(例如:持久化、快取雪崩、穿透、擊穿、雙寫一致性、資料過期、資料淘汰策略、主從、哨兵、分片叢集)
6、微服務相關問題(例如:什麼是分散式事務?使用場景?)
7、Docker容器操作相關命令?
8、ES相關問題
9、MQ相關問題、Kafka的使用?
10、口述一下你做過的專案以及用到的知識點
11、自學的兩個專案相關知識點的複習尤其是SpringCloud專案
12、其它

相關文章