1、基礎與框架
2.String,Stringbuffer,StringBuilder的區別?
3.ArrayList和LinkedList有什麼區別
4.類的實例化順序,好比父類靜態數據,構造函數,字段,子類靜態數據,構造函數,字段,他們的執行順序
5.用過哪些Map,都有什麼區別,HashMap是線程安全的嗎,併發下使用的Map是什麼,他們內部原理分別是什麼,好比hashcode,擴容等
6.HashMap爲何get和set那麼快,concurrentHashMap爲何能提升併發
7.抽象類和接口的區別,類能夠繼承多個類麼,接口能夠繼承多個接口麼,類能夠實現多個接口麼
10.反射中,Class.forName和ClassLoader區別
12.講講Spring事務的傳播屬性,AOP原理,動態代理與cglib實現的區別,AOP有哪幾種實現方式
13.Spring的beanFactory和factoryBean的區別
2、多線程
2.多線程的幾種實現方式,什麼是線程安全,什麼是重排序
4.sleep和wait的區別,以及wait的實現原理
5.Lock與synchronized 的區別,synchronized 的原理,什麼是自旋鎖,偏向鎖,輕量級鎖,什麼叫可重入鎖,什麼叫公平鎖和非公平鎖
7.用過哪些線程池,他們的原理簡單歸納下,構造函數的各個參數的含義,好比coreSize,maxsize等
8.有一個第三方接口,有不少個線程去調用獲取數據,如今規定每秒鐘最多有10個線程同時調用它,如何作到。
9.spring的controller是單例仍是多例,怎麼保證併發的安全
10.用三個線程按順序循環打印abc三個字母,好比abcabcabc
11.ThreadLocal用過麼,原理是什麼,用的時候要注意什麼
3、JVM相關
1.jvm中一次完整的GC流程(從ygc到fgc)是怎樣的,重點講講對象如何晉升到老年代,幾種主要的jvm參數等
2.你知道哪幾種垃圾收集器,各自的優缺點,重點講下cms
4、網絡
2.TCP三次握手和四次揮手的流程,爲何斷開鏈接要4次,若是握手只有兩次,會出現什麼
3.TIME_WAIT和CLOSE_WAIT的區別
5.當你用瀏覽器打開一個連接的時候,計算機作了哪些工做步驟
7.TCP/IP如何保證可靠性,數據包有哪些數據組成
10.常見的緩存策略有哪些,大家項目中用到了什麼緩存系統,如何設計的,Redis的使用要注意什麼,持久化方式,內存設置,集羣,淘汰策略等
14.設計一個秒殺系統,30分鐘沒付款就自動關閉交易
16.用過哪些MQ,怎麼用的,和其餘mq比較有什麼優缺點,MQ的鏈接是線程安全的嗎
20.什麼是restful,講講你理解的restful
25.redis和memcached 的內存管理的區別
26.一個在線文檔系統,文檔能夠被編輯,如何防止多人同時對同一份文檔進行編輯更新
5、算法
二、有1億個數字,其中有2個是重複的,快速找到它,時間和空間要最優
6、數據庫
1.數據庫隔離級別有哪些,各自的含義是什麼,MYsql默認的隔離級別是是什麼,各個存儲引擎優缺點
2.高併發下,如何作到安全的修改同一行數據,樂觀鎖和悲觀鎖是什麼,INNODB的行級鎖有哪2種,解釋其含義
3.SQL優化的通常步驟是什麼,怎麼看執行計劃,如何理解其中各個字段的含義,索引的原理?
4.數據庫會死鎖嗎,舉一個死鎖的例子,mysql怎麼解決死鎖
7、最後
歡迎你們關注個人公衆號【程序員追風】,文章都會在裏面更新,整理的資料也會放在裏面。