更新時間:2019-11-01 18:20:57 來源:動力節點 瀏覽3070次
今天動力節點java學院小編給大家分享百度java工程師面試題,希望你可以有機會進入大公司。據說面試官自帶電腦,整個面試過程都在記錄,首先詳細詢問了最近一份工作項目的架構和工作內容,面試主要圍繞工作中用到的組件和中間件技術來擴展,考察掌握程度。百度java工程師面試題如下:
一、百度java工程師面試題
1、Spring或者數據庫的事物隔離級別和傳播特性是怎樣的
2、final都能修飾什么,它起到什么作用
3、statement和prepareStatement兩者有什么區別
4、HashMap和HashTable主要的區別是什么
5、LinkedList和ArrayList的區別是什么
6、HashMap底層的數據結構是怎樣的
7、數據庫的索引是如何實現的,主鍵索引和聯合索引數據結構有什么區別
8、Servlet的原理是什么,是否是線程安全的
9、JDBC的目的是什么,是一種接口還是一種實現(JDBC本身是一種標準,每種數據庫的JDBC是一種實現),有什么主要的技術
10、用過哪種連接池,為什么要用連接池
11、用過哪些緩存,用于什么場景,redis怎么實現分布式鎖
二、百度java工程師初試問題
1、寫一個單例模式
2、斐波那契數列的遞歸與遍歷實現
3、給定2,3,5面值的硬幣若干,給出一個數字,計算拼湊這個數字最少用到硬幣的個數
4、有10億個數字,如何找出top100.(引申問題,鏈表與數組的的選用)
5、HashMap的內部數據結構(第二次問),Rehash的實現
6、ConcurrentHashMap的實現原理,與HashTable區別是什么(分Segment)
7、Java有哪些同步機制
8、數據庫有哪些鎖,哪些引擎,分別共享鎖和排他鎖的區別,應用場景有什么不同
9、B樹和B+樹的區別,為什么選用B+樹作為數據庫索引,B+數的孩子節點索引用什么方法查找(二分法……),為什么mysql推薦自增int作為主鍵
10、redis的分布式鎖用了什么方法實現(setNX背后的數據結構)
11、synchronize都能修飾什么,有什么區別
12、volatile解決了什么問題,原理是什么
三、百度java工程師復試問題
1、Java的異常有幾種
2、ThreadLoacl的原理是什么,怎么應用
3、寫一個觀察者模式和修飾者模式
4、Java都有哪些鏈接池,鏈接池的的原理是什么,具體的技術細節,包括核心工作線程,linkedBlockingQueue的原理,一些場景會發生什么(隊列滿了會怎樣,隊列空了工作線程會怎樣等)
5、servlet的技術細節、原理、線程安全、工作流程
6、Stirng,StringBuilder,StringBuffer之間的區別
7、簡述一下GC
8、簡述一下AOP
9、Java有哪些Lock
10、Concurrent包都有哪些類,為什么要有concurrent類
11、TreeMap背后的數據結構是什么,紅黑樹的原理是什么
12、一些復雜的SQL怎么寫,四種連接都是什么樣的
13、多線程程序如何設計
以上就是動力節點java學院小編介紹的“百度java工程師面試題”的內容,希望對大家有幫助,更多java最新面試題請繼續關注動力節點java學院官網,每天會有精彩內容分享與你。
相關java面試題推薦
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習