面試

1.筆試常見的問題?

面試常見的問題上面給的面試題鏈接基本都有。我只提幾點(diǎn):1)寫SQL:寫SQL很常考察group by、內(nèi)連接和外連接。2)手寫代碼:手寫代碼一般考單例、排序、線程、消費(fèi)者生產(chǎn)者。我建議排序算法除了冒泡排序,最好還能手寫一種其他的排序代碼。試想:如果一般面試者都寫的冒泡排序,而你寫的是快速排序/堆排序,肯定能給面試官留下不錯的印象。



2.面試

1)讓你自我介紹

2)問Java基礎(chǔ)知識

3)問項(xiàng)目

4)情景問題,例如:

你的一個功能上了生產(chǎn)環(huán)境后,服務(wù)器壓力驟增,該怎么排查。

比如你做電商秒殺活動場景下,如何在高并發(fā)的情況下, 避免出現(xiàn)負(fù)庫存的情況,我的回答是用消息隊列的中間件,你如 果有什么好的處理方式也可以說

我需要向不同的客戶發(fā)送消息,怎么去保證消息的準(zhǔn)確性和延時性(消息隊列處理)

5)你有什么想問面試官的

3.面試常問的知識點(diǎn)?

1)集合相關(guān)問題(必問):

HashMap、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList的底層實(shí)現(xiàn)。

HashMap和Hashtable的區(qū)別。

ArrayList、LinkedList、Vector的區(qū)別。

HashMap和ConcurrentHashMap的區(qū)別。

HashMap和LinkedHashMap的區(qū)別。

HashMap是線程安全的嗎。

ConcurrentHashMap是怎么實(shí)現(xiàn)線程安全的。

2)線程相關(guān)問題(必問):

創(chuàng)建線程的3種方式。

什么是線程安全。

Runnable接口和Callable接口的區(qū)別。

wait方法和sleep方法的區(qū)別。

synchronized、Lock、ReentrantLock、ReadWriteLock。

介紹下CAS(無鎖技術(shù))。

什么是ThreadLocal。

創(chuàng)建線程池的4種方式。

ThreadPoolExecutor的內(nèi)部工作原理。

分布式環(huán)境下,怎么保證線程安全。

3)JVM相關(guān)問題:

介紹下垃圾收集機(jī)制(在什么時候,對什么,做了什么)。

垃圾收集有哪些算法,各自的特點(diǎn)。

類加載的過程。 雙親委派模型。

有哪些類加載器。

能不能自己寫一個類叫java.lang.String。

4)設(shè)計模式相關(guān)問題(必問):

先問你熟悉哪些設(shè)計模式,然后再具體問你某個設(shè)計模式具體實(shí)現(xiàn)和相關(guān)擴(kuò)展問題。

5)數(shù)據(jù)庫相關(guān)問題,針對Mysql(必問):

給題目讓你手寫SQL。

有沒有SQL優(yōu)化經(jīng)驗(yàn)。

Mysql索引的數(shù)據(jù)結(jié)構(gòu)。

SQL怎么進(jìn)行優(yōu)化。

SQL關(guān)鍵字的執(zhí)行順序。

有哪幾種索引。

什么時候該(不該)建索引。

Explain包含哪些列。

Explain的Type列有哪幾種值。

6)框架相關(guān)問題:

Hibernate和Mybatis的區(qū)別。

Spring MVC和Struts2的區(qū)別。

微服務(wù)之間是如何獨(dú)立通信的

什么是服務(wù)熔斷,什么是服務(wù)降級

Spring用了哪些設(shè)計模式。

Spring中AOP主要用來做什么。

Spring注入bean的方式。

什么是IOC,什么是依賴注入。

Spring是單例還是多例,怎么修改。

Spring事務(wù)隔離級別和傳播性。

介紹下Mybatis/Hibernate的緩存機(jī)制。

Mybatis的mapper文件中#和$的區(qū)別。

Mybatis的mapper文件中resultType和resultMap的區(qū)別。

Mybatis中DAO層接口沒有寫實(shí)現(xiàn)類,Mapper中的方法和DAO接口方法是怎么綁定到一起的,其內(nèi)部是怎么實(shí)現(xiàn)的。

7)其他遇到問題:

介紹下棧和隊列。

IO和NIO的區(qū)別。

接口和抽象類的區(qū)別。

int和Integer的自動拆箱/裝箱相關(guān)問題。 常量池相關(guān)問題。

==和equals的區(qū)別。

重載和重寫的區(qū)別。

String和StringBuilder、StringBuffer的區(qū)別。

靜態(tài)變量、實(shí)例變量、局部變量線程安全嗎,為什么。 try、catch、finally都有return語句時執(zhí)行哪個。

介紹下B樹、二叉樹。

ajax的4個字母分別是什么意思。

xml全稱是什么。

分布式鎖的實(shí)現(xiàn)。

分布式session存儲解決方案。

常用的linux命令。

談?wù)凾CP/IP的工作原理,能實(shí)現(xiàn)基本的網(wǎng)絡(luò)編程

你是否了解網(wǎng)絡(luò)安全機(jī)制

Java8的新特性

說說Java開發(fā)常用的一些注解

微信支付完成以后返回的信息是什么形式的,xml格式的

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容