馬上到今年的金九銀十了,又是跳槽的好季節,準備跳槽的同學都摩拳擦掌準備大面好幾場, 為大家準備了精選的面試題。
本套Java面試題大全總共分為以下這六個模塊:
1、&和&&的區別?
2、int和 Integer 有什麼區別?(基本數據類型有哪些?)(String不是基本數據類型)
3、String、StringBuffer、 StringBuilder 的區別?
4、String 類的常用方法都有那些?
5、String 字符串修改實現的原理?
6、兩個對象的 hashCode() 相同,則 equals() 也一定為 true 嗎?
7、解釋下什麼是面向對象?面向對象和面向過程的區別?
8、Java 是否支持多繼承?
9、什麼是構造函數?什麼是構造函數重載?
10、Java 的泛型是如何工作的 ? 什麼是類型擦除 ?
11、什麼是泛型中的限定通配符和非限定通配符 ?
12、Java 中的 IO 流的分類?
1、並發編程三要素?
2、實現可見性的方法有哪些?
3、多線程的價值?
4、創建線程的有哪些方式?
5、創建線程的三種方式的對比?
6、線程的狀態流轉圖
7、Java線程具有五中基本狀態
8、什麼是線程池?有哪幾種創建方式?
9、四種線程池的創建
10、線程池的優點?
11、常用的並發工具類有哪些?
12、CyclicBarrier和CountDownLatch的區別
13、synchronized的作用?
14、volatile關鍵字的作用
15、什麼是CAS
16、CAS的問題
17、什麼是Future?
18、什麼是AQS
19、AQS支持兩種同步方式:
20、ReadWriteLock是什麼
21、FutureTask是什麼
22、synchronized和ReentrantLock的區別
23、什麼是樂觀鎖和悲觀鎖
24、線程B怎麼知道線程A修改了變量
25、synchronized、volatile、CAS比較
26、sleep方法和wait方法有什麼區別?
27、ThreadLocal是什麼?有什麼用?
28、為什麼wait()方法和notify()/notifyAll()方法要在同步塊中被調用
29、多線程同步有哪幾種方法?
30、線程的調度策略
32、Linux環境下如何查找哪個線程使用CPU最長
33、Java死鎖以及如何避免?
34、死鎖的原因
35、怎麼喚醒一個阻塞的線程
36、不可變對象對多線程有什麼幫助
37、什麼是多線程的上下文切換
38、如果你提交任務時,線程池隊列已滿,這時會發生什麼
39、Java中用到的線程調度算法是什麼
40、什麼是線程調度器(Thread Scheduler)和時間分片(Time Slicing)?
41、什麼是自旋
42、線程類的構造方法、靜態塊是被哪個線程調用的
43、同步方法和同步塊,哪個是更好的選擇?
44、Java線程數過多會造成什麼異常?
1、redis常見性能問題和解決方案:
2、mySQL裡有2000w數據,redis中只存20w的數據,如何保證redis中的數據都是熱點數據
3、請用Redis和任意語言實現一段惡意登錄保護的代碼,限制1小時內每用戶Id最多只能登錄5次。具體登錄函數或功能用空函數即可,不用詳細寫出。
4、為什麼redis需要把所有數據放到內存中?
5、redis的並發競爭問題如何解決?
6、redis事物的了解CAS(check-and-set 操作實現樂觀鎖 )?
7、redis持久化的幾種方式
8、redis的緩存失效策略和主鍵失效機制
9、Redis集群方案什麼情況下會導致整個集群不可用?
10、說說Redis哈希槽的概念?
1、常見的幾大排序及查找算法及其時間複雜度?
2、求數組中最長連續序列長度
3、在一個二維數組中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序, 請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含有該整數。
4、兩個棧實現一個隊列。(美團、小米) 擴展:兩個隊列如何實現一個棧?
5、鍊表反轉(單項鍊表的反轉和雙向鍊表的反轉)
6、給Map排序---按照key的字母後按照格式[k1=v1:k2=v2]輸出(阿里旅行)
1、Error 和 Exception 區別是什麼?
2、運行時異常和一般異常(受檢異常)區別是什麼?
3、JVM 是如何處理異常的?
4、throw 和 throws 的區別是什麼?
5、final、finally、finalize 有什麼區別?
6、NoClassDefFoundError 和 ClassNotFoundException 區別?
7、try-catch-finally 中哪個部分可以省略?
8、try-catch-finally 中,如果 catch 中 return 了,finally 還會執行嗎?
9、類 ExampleA 繼承 Exception,類 ExampleB 繼承ExampleA?
10、常見的 RuntimeException 有哪些?
11、Java常見異常有哪些?
1、Java內存區域
2、HotSpot虛擬機對象探秘
3、內存溢出異常
Java會存在內存洩漏嗎?請簡單描述
4、垃圾收集器
5、內存分配策略
簡述java內存分配與回收策率以及Minor GC和Major GC
6、虛擬機類加載機制
7、JVM調優
上述問到的面試題答案&最新2020整理收集的一些面試題(都整理成文檔),有需要的可以私信回覆:「2020」 即可免費領取。
希望對大家有所幫助,有用的話點讚給我支持!