面試相關知識點

1.筆試常見的問題? 
面試常見的問題上面給的面試題連接基本都有。我只提幾點:1)寫SQL:寫SQL很常考察group by、內鏈接和外鏈接。2)手寫代碼:手寫代碼通常考單例、排序、線程、消費者生產者。我建議排序算法除了冒泡排序,最好還能手寫一種其餘的排序代碼。試想:若是通常面試者都寫的冒泡排序,而你寫的是快速排序/堆排序,確定能給面試官留下不錯的印象。 
2.面試流程? 
1)讓你自我介紹 
2)問Java基礎知識 
3)問項目 
4)情景問題,例如:你的一個功能上了生產環境後,服務器壓力驟增,該怎麼排查。 
5)你有什麼想問面試官的 
3.面試常問的知識點? 
1)集合相關問題(必問): 
HashMap、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList的底層實現。 
HashMap和Hashtable的區別。 
ArrayList、LinkedList、Vector的區別。 
HashMap和ConcurrentHashMap的區別。 
HashMap和LinkedHashMap的區別。 
HashMap是線程安全的嗎。 
ConcurrentHashMap是怎麼實現線程安全的。 
2)線程相關問題(必問): 
建立線程的3種方式。 
什麼是線程安全。 
Runnable接口和Callable接口的區別。 
wait方法和sleep方法的區別。 
synchronized、Lock、ReentrantLock、ReadWriteLock。 
介紹下CAS(無鎖技術)。 
什麼是ThreadLocal。 
建立線程池的4種方式。 
ThreadPoolExecutor的內部工做原理。 
分佈式環境下,怎麼保證線程安全。 
想要朝這方面發展或者真心有興趣的。能夠找我要一些基礎的學習視頻,Q號碼:3300863615,這個是免費的,但願同窗找我要的時候不要有理所應當的態度,畢竟都是個人心血,但願你是真的有一顆想要學好java的心,我也會盡所能的去幫助你成爲一名優秀的程序員。 
3)JVM相關問題: 
介紹下垃圾收集機制(在何時,對什麼,作了什麼)。 
垃圾收集有哪些算法,各自的特色。 
類加載的過程。 雙親委派模型。 
有哪些類加載器。 
能不能本身寫一個類叫java.lang.String。 
4)設計模式相關問題(必問): 
先問你熟悉哪些設計模式,而後再具體問你某個設計模式具體實現和相關擴展問題。 
5)數據庫相關問題,針對Mysql(必問): 
給題目讓你手寫SQL。 
有沒有SQL優化經驗。 
Mysql索引的數據結構。 
SQL怎麼進行優化。 
SQL關鍵字的執行順序。 
有哪幾種索引。 
何時該(不應)建索引。 
Explain包含哪些列。 
Explain的Type列有哪幾種值。 
6)框架相關問題: 
Hibernate和Mybatis的區別。 
Spring MVC和Struts2的區別。 
Spring用了哪些設計模式。 
Spring中AOP主要用來作什麼。 
Spring注入bean的方式。 
什麼是IOC,什麼是依賴注入。 
Spring是單例仍是多例,怎麼修改。 
Spring事務隔離級別和傳播性。 
介紹下Mybatis/Hibernate的緩存機制。 
Mybatis的mapper文件中#和$的區別。 
Mybatis的mapper文件中resultType和resultMap的區別。 
Mybatis中DAO層接口沒有寫實現類,Mapper中的方法和DAO接口方法是怎麼綁定到一塊兒的,其內部是怎麼實現的。 
7)其餘遇到問題: 
介紹下棧和隊列。 
IO和NIO的區別。 
接口和抽象類的區別。 
int和Integer的自動拆箱/裝箱相關問題。 常量池相關問題。 
==和equals的區別。 
重載和重寫的區別。 
String和StringBuilder、StringBuffer的區別。 
靜態變量、實例變量、局部變量線程安全嗎,爲何。 try、catch、finally都有return語句時執行哪一個。 
介紹下B樹、二叉樹。 
ajax的4個字母分別是什麼意思。 
xml全稱是什麼。 
分佈式鎖的實現。 
分佈式session存儲解決方案。 
經常使用的linux命令。 java

相關文章
相關標籤/搜索