10多家公司的Java開發面試常見問題合集

​上篇文章我請幾個大佬幫我總結了一下,整理了三套模擬面試題,細心的大佬已經發現我中間斷更了一天,爲什麼斷更呢,也講一下原因吧。我把我以前去面試過的那些東東扒出來了,今天我分享一下我的。
在這裏插入圖片描述

本人是做java開發的,這是我參加工作幾年面試總結所得,當然面得那些公司自然是跟在座的大佬比不得。有一些互聯網大廠也有一些小的創業型公司的面試問題,與之前的幾篇分享的會有一些重複,弄清楚這些,相信面試會輕鬆許多。

一次面試事故

面試官:你看過哪些源碼?
我:都挺熟悉的
面試官:對hashMap瞭解程度怎麼樣?
面試官:那你能講講 HashMap的實現原理嗎?
面試官:HashMap什麼時候會進行 rehash?
面試官:結合源碼說說 HashMap在高併發場景中爲什麼會出現死循環?
我:…
我:抱歉…
面試官:嗯。
面試官:… 把門關上。
我:… 要幹嘛?先關上再說。
面試官:我說出去把門關上。
我:what ?,奪門而去

116道面試題

在這裏插入圖片描述

  1. junit用法,before,beforeClass,after, afterClass的執行順序

  2. nginx的請求轉發算法,如何配置根據權重轉發

  3. 用hashmap實現redis有什麼問題(死鎖,死循環,可用ConcurrentHashmap)

  4. 線程的狀態

  5. 線程的阻塞的方式

  6. sleep和wait的區別

  7. hashmap的底層實現

  8. 一萬個人搶100個紅包,如何實現(不用隊列),如何保證2個人不能搶到同一個紅包,可用分佈式鎖

  9. java內存模型,垃圾回收機制,不可達算法

  10. 兩個Integer的引用對象傳給一個swap方法在方法內部交換引用,返回後,兩個引用的值是否會發現變化

  11. aop的底層實現,動態代理是如何動態,假如有100個對象,如何動態的爲這100個對象代理

  12. 是否用過maven install。maven test。git(make install是安裝本地jar包)

  13. tomcat的各種配置,如何配置docBase

  14. spring的bean配置的幾種方式

  15. web.xml的配置

  16. spring的監聽器。

  17. zookeeper的實現機制,有緩存,如何存儲註冊服務的

  18. IO會阻塞嗎?readLine是不是阻塞的

  19. 用過spring的線程池還是java的線程池?

  20. 字符串的格式化方法 (20,21這兩個問題問的太低級了)

  21. 時間的格式化方法

  22. 定時器用什麼做的

  23. 線程如何退出結束

  24. java有哪些鎖?樂觀鎖 悲觀鎖 synchronized 可重入鎖 讀寫鎖,用過reentrantlock嗎?reentrantlock與synmchronized的區別

  25. ThreadLocal的使用場景

  26. java的內存模型,垃圾回收機制

  27. 爲什麼線程執行要調用start而不是直接run(直接run,跟普通方法沒什麼區別,先調start,run纔會作爲一個線程方法運行)

  28. qmq消息的實現機制(qmq是去哪兒網自己封裝的消息隊列)

  29. 遍歷hashmap的三種方式

  30. jvm的一些命令

  31. memcache和redis的區別

  32. mysql的行級鎖加在哪個位置

  33. ConcurrentHashmap的鎖是如何加的?是不是分段越多越好

  34. myisam和innodb的區別(innodb是行級鎖,myisam是表級鎖)

  35. mysql其他的性能優化方式

  36. linux系統日誌在哪裏看

  37. 如何查看網絡進程

  38. 統計一個整數的二進制表示中bit爲1的個數

  39. jvm內存模型,java內存模型

  40. 如何把java內存的數據全部dump出來

在這裏插入圖片描述

  1. Java 會出現內存溢出嗎?什麼情況下會出現?

  2. 雙親委派模型,爲什麼這樣做?

  3. 對象什麼情況下進入老年代?

  4. mongodb和hbase的區別

  5. 如何解決併發問題

  6. 爲什麼使用 Executor 框架?

  7. 什麼是阻塞隊列?阻塞隊列的實現原理是什麼?如何使用阻塞隊列來實現生產者-消費者模型?

  8. 快速排序說一下過程

  9. 垃圾回收算法

  10. Tomcat 類加載器

  11. 讀寫分離何時強制要讀主庫,讀哪個從庫是通過什麼方式決定的,從庫的同步mysql用的什麼方式

  12. Redis 的數據類型?

  13. 一個字符串類型的值能存儲最大容量是多少?

  14. 將一個鏈表反轉(用三個指針,但是每次只發轉一個)

  15. spring Aop的實現原理,具體說說

  16. 在 java 中守護線程和本地線程區別?

  17. 是否用過Autowire註解

  18. spring的注入bean的方式

  19. sql語句各種條件的執行順序,如select, where, order by, group by

  20. select xx from xx where xx and xx order by xx limit xx;如何優化這個(看explain)

  21. 四則元算寫代碼

  22. 統計100G的ip文件中出現ip次數最多的100個ip

  23. zookeeper的事物,結點,服務提供方掛了如何告知消費方

  24. 5臺服務器如何選出leader(選舉算法)

  25. 適配器和代理模式的區別

  26. 讀寫鎖

  27. static加鎖

  28. Jedis 與 Redisson 對比有什麼優缺點?

  29. 爲什麼 edis 需要把所有數據放到內存中?

  30. mybatis如何映射表結構

  31. 二叉樹遍歷

  32. 如何使用 Spring Boot 實現分頁和排序?

  33. mysql引擎區別

  34. 你使用了哪些 starter maven 依賴項?

  35. class文件編譯後加載到了哪

  36. web的http請求如何整體響應時間變長導致處理的請求數變少,該如何處理?用隊列,當處理不了那麼多http請求時將請求放到隊列

中慢慢處理,web如何實現隊列

  1. 線程安全的單例模式

  2. 什麼是 AOP?

  3. 你能否舉一個以 ReadOnly 爲事務管理的例子?

  4. 求表的size,或做數據統計可用什麼存儲引擎

在這裏插入圖片描述

  1. 哪個命令專門用來查看後臺任務?

  2. 把後臺任務調到前臺執行使用什麼命令?

  3. 怎麼查看系統支持的所有信號?

  4. 搜索文件用什麼命令? 格式是怎麼樣的?

  5. 使用什麼命令查看用過的命令列表?

  6. 使用什麼命令查看磁盤使用空間?空閒空間呢?

  7. java的concurrent包用過沒

  8. Java 中用到的線程調度算法是什麼?

  9. java虛擬機的區域分配,各區分別存什麼

  10. 在 Java 中 CycliBarriar 和 CountdownLatch 有什麼區別?

  11. Mybatis 是如何進行分頁的?分頁插件的原理是什麼?

  12. Mybatis 是如何將 sql 執行結果封裝爲目標對象並返回的?都有哪些映射形式?

  13. 在 mapper 中如何傳遞多個參數?

  14. 什麼是 MyBatis 的接口綁定?有哪些實現方式?

  15. redis能存哪些類型

  16. 服務註冊和發現是什麼意思?Spring Cloud 如何實現?

  17. Spring Cloud 和dubbo區別?

  18. 什麼是 Spring Cloud Bus?我們需要它嗎?

  19. 什麼是 Netflix Feign?它的優點是什麼?

  20. SpringBoot和SpringCloud的區別?

  21. 可重入鎖中的lock和trylock的區別

  22. innodb對一行數據的讀會枷鎖嗎?不枷鎖,讀實際讀的是副本

  23. redis做緩存是分佈式存的?不同的服務器上存的數據是否重複?guava cache呢?是否重複?不同的機器存的數據不同

  24. 用awk統計一個ip文件中top10

  25. 對錶做統計時可直接看schema info信息,即查看錶的系統信息

  26. mysql目前用的版本

  27. 公司經驗豐富的人給了什麼幫助?(一般boss面會問這些)

  28. 自己相對於一樣的應屆生有什麼優勢

  29. 自己的好的總結習慣給自己今後的工作帶了什麼幫助,舉例爲證

  30. 原子類,線程安全的對象,異常的處理方式

  31. 4Zookeeper 對於 Kafka 的作用是什麼?

  32. 數據傳輸的事務定義有哪三種?

  33. Kafka 判斷一個節點是否還活着有那兩個條件?

  34. Kafka 與傳統 MQ 消息系統之間有三個關鍵區別

  35. 講一講 kafka 的 ack 的三種機制

  36. kafka 如何不消費重複數據?比如扣款,我們不能重複的扣。

在這裏插入圖片描述

面試題答案

好了各位, 本文到這裏就結束了! 關於面試題答案爲什麼沒有直接寫出來,我想說的是把面試題寫下來會顯得文章很長,(現在已經很長了…)這樣就影響文章的可讀性。

java 面試題 400 多頁 ,都已經分專題整理好了。還有幾百頁的Java核心知識點PDF。

歡迎大傢俬信領取,,回覆“pdf”或“面試”即可

我是提莫,一個節操氾濫,一身凜然正氣,剛正不阿的Java程序員

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章