2020年3月份,頭條Java崗最新的面試題(三面)

一面 java

=====mysql

一、concurrent包下面用過哪些?面試

二、countdownlatch功能實現redis

三、synchronized和lock區別,重入鎖算法

四、thread和runnable的區別spring

五、AtomicInteger實現原理(CAS自旋)sql

六、java併發sleep與wait、notify與notifyAll的區別設計模式

七、如何實現高效的同步鏈表服務器

八、java都有哪些加鎖方式(synchronized、ReentrantLock、共享鎖、讀寫鎖等)併發

九、設計模式(工廠模式、單例模式(幾種狀況)、適配器模式、裝飾者模式)

十、maven依賴樹,maven的依賴傳遞,循環依賴


二面

一、synchronized和reentrantLock的區別,synchronized用在代碼快、方法、靜態方法時鎖的都是什麼?

二、介紹spring的IOC和AOP,分別如何實現(classloader、動態代理)

三、JVM的內存佈局以及垃圾回收原理及過程講一下,講一下CMS垃圾收集器垃圾回收的流程,以及CMS的缺點

四、redis如何處理分佈式服務器併發形成的不一致

五、OSGi的機制

六、spring中bean加載機制,bean生成的具體步驟,ioc注入的方式

七、spring什麼時候建立applicationContext

八、listener是監聽哪一個事件?

九、介紹ConcurrentHashMap原理,用的是哪一種鎖,segment有沒可能增大?

十、解釋mysql索引、b樹,爲啥不用平衡二叉樹、紅黑樹

十一、Zookeeper如何同步配置


三面

一、Java線程池ThreadPoolEcecutor參數,基本參數,使用場景

二、MySQL的ACID講一下,延伸到隔離級別

三、dubbo的實現原理,說說RPC的要點

四、GC停頓緣由,如何下降停頓?

五、JVM如何調優、參數怎麼調?

六、如何用工具分析jvm狀態(visualVM看堆中對象的分配,對象間的引用、是否有內存泄漏,jstack看線程狀態、是否死鎖等等)

七、描述一致性hash算法(Redis)

八、再談談消息隊列


關於面試方面,有什麼問題,歡迎留言溝通,在這裏也祝你們都能找到一個合適的工做~

相關文章
相關標籤/搜索