9月基本要結束了,給大家分享一下大佬的經歷, 給還沒有上岸的同學打打氣。
面試之前的準備做完了,面試問題該怎麼辦,正文開始。
1.物件導向和程式導向的區別?
2.java為什麼說它即是直譯語言,又是編譯型語言。
3.java怎麼彌補它單繼承的特性。
4.java語言的三大特性。
5.怎麼拼接多個string。
6.多程序和多執行緒的應用場景。
7.CPU密集型任務適合多程序還是多執行緒?
8.為什麼程序的健壯性更好?
9.程序的同步機制,你在什麼時候用。
10.向一個程序發出kill訊號接下來發生什麼?
11.共用記憶體的壞處。
12.你在什麼時候捕獲異常,捕獲之後怎麼處理。
13.深拷貝和淺拷貝,你在什麼時候用?
14.java的包裝類的瞭解?為啥要有包裝類?
15.守護行程,它可以用來做什麼?
16.多執行緒會出現什麼問題?
1.如何實現多型?並以物件導向的思想設計一個貓吃魚的例子(寫程式碼)
2.如何避免執行緒死鎖?
3.synchronized關鍵字加在靜態方法和非靜態方法上有何區別?
4.執行緒有哪些基本狀態,狀態切換圖畫出來
5.解釋一下IO阻塞?
6.用過哪些集合?
7.ArrayList和LinkedList的區別?
8.HashMap的底層原理? 在key相同的情況下怎麼處理?
9.HashMap執行緒安全嗎?與ConcurrentHashMap的區別?分段鎖在Java8後有什麼變化?
10.TCP如何保證可靠傳輸?
11.TCP兩次握手不行嗎?
12.TCP斷連呢?為什麼需要4次揮手?
13.TCP建立連線後,伺服器端出現故障,怎麼處理?
14.TCP流量控制、擁塞控制?
15.解釋一下SQL隱碼攻擊
16.事務的特性是什麼?
17.事務隔離級別有哪些?
18.MySQL儲存引擎是什麼?
19.索引的優點是什麼?什麼場景下使用索引、什麼場景下不使用?
1.你為什麼會考慮投遞java開發
2.你在學習java過程中,或者在做的這些事情的,實現一些小的專案之類的,有沒有遇到什麼挫折
3.JVM是怎麼實現的,記憶體是怎麼管理的?
4.新生代老年代記憶體劃分,是什麼樣的,比例,為什麼是1:2。
5.什麼情況下JVM會出現記憶體的溢位?
6.棧幀的模型是什麼樣的,包含哪些東西
7.Java如何支援並行安全?
8.Java讀過原始碼嗎?瞭解集合類嗎?講一下HashMap
9.HashMap的雜湊演演算法是怎麼實現的,為什麼要這樣實現
10.為什麼用紅黑樹,不用其他的資料結構,紅黑樹有什麼好處
11.學過計算機網路嗎? 學過
12.實現一個檔案管理服務,怎麼實現比較好?例如有一個使用者端向你傳遞一個檔案,把檔案儲存起來,上傳過來,怎麼實現比較好。重要的檔案,不重要的檔案,要上傳到開發的檔案伺服器。檔案傳輸的過程。
13.TCP怎麼解決傳輸可靠性的問題。
14.用過哪些中介軟體?訊息中介軟體,快取之類的用過嗎?
15.Kafka用在哪些場景?
16.MySQL怎麼管理事務?MySQL不是有ACID嗎?怎麼實現的。
1.mysql中有哪些索引
2.char和varchar
3.如何檢視sql查詢的效能瓶頸
4.mysql的事務隔離
5.mybatis中的#和$
6.Java中如何實現多執行緒
7.HashMap的實現原理
8.針對HashMap的攻擊
9.synchronized作用是什麼,在哪些地方用到了
10.HTTP有哪些響應碼,可以自定義響應碼嗎
11.HTTP的DELETE方法是做什麼的,可不可以用於請求增加或者建立某個資源
12.@RequestMapping註解是做什麼用的,有哪些屬性
13.剛建立的物件可能被放在老年代嗎
14.JVM有哪些可以設定的引數
技術點:每家的技術問題都不一樣,不變的是基礎技術,所以必須要紮實,像演演算法、資料結構、作業系統等...。
拓展:還是要提前準備好JVM、多執行緒高並行這塊,主要集中在高並行、多執行緒、分散式架構,大以及常用中介軟體(快取等)的選型和比較。
最後為大家把面試問題和答案都整理好啦!
面試寶典:戳這裡免費領取,暗號:CSDN,還有更多大廠面試專題資料和視訊哦!