1. 程式人生 > >java開發3輪技術面+hr面 面經(美團)

java開發3輪技術面+hr面 面經(美團)

首先講真,得感謝牛客的討論區,感謝美團給我面試的機會,感謝幫忙內推的小夥伴,樓主渣渣雙非學校小碩,投過簡歷無數,簡歷被掛無數,幾乎都是石沉大海,所以每次面試都感覺彌足珍貴,本來上週面完就該發個面經的,但想想還是等定下來再寫吧,今天收到了電話通知,所以過來發個貼,好了,廢話不多說,不管最後去不去mt,先把面經弄出來再說。。。
技術一面:
一面基本上面的還算基礎 沒有過多的刁難 不過問題量特別大
1、自我介紹
巴拉巴拉,大致說了下實習和自己平時自己喜歡做的事情
2、我們先聊聊java基礎知識吧,說出Object類的常用方法?

toString(),clone(),執行緒的三個方法:wait
()notify()notifyAll(),hashcode()finallize(),equals()

大致講了上面這些個方法 並說了下各個方法的作用。。。。
3、剛剛說到object的常用方法,這些方法你應該都很熟悉吧,那你說說你對equal和hashcode這兩個方法的認識?
主要談了下兩個的作用 以及 當重寫equal方法時候一定要記得重寫hashcode方法,然後面試官就問了為什麼,然後就繼續巴拉巴拉。。。
然後面試官緊接著問 兩個物件如果equals那麼這兩個物件的hashcode一定相等麼 回答是! 那如果兩個物件的hashcode相等那麼這兩個物件是否一定equals?回答 不一定!理由其實 就是 關於 講重寫這兩個方法的情況。。。。
4、多執行緒用過吧?寫過一些demo,那你說說多執行緒之間的通訊,回答用wait sleep notify notifyAll配合使用 然後就問 wait和sleep一樣嗎?回答不一樣,然後巴拉巴拉談了下,關於物件鎖的釋放,是否需要喚醒。。。
5、嗯,剛剛談到了鎖,一下面試官就扯出了鎖,看你簡歷上ssh mybatis都熟悉,那你知道悲觀鎖和樂觀鎖吧?答知道,然後講了下兩個的區別以及應用場景
6、你平時資料庫一般用的什麼 mysql 那你說說在工作中一般用的什麼資料庫引擎 答 mysql預設的是InnoDB儲存引擎 敢情面試官想給我使絆子來著,接著就讓說InnoDB和MyISAM之間使用場景問題了,然後就就著這兩種儲存引擎的區別 以及 優缺點巴拉巴拉說了一通
7、平時是怎麼處理事務的,講下對事務的瞭解
巴拉巴拉。。。。
8、看你簡歷上講了分庫分表 談談兩個的使用 以及 在工作中 怎麼去設計
這裡主要是結合自己實習的專案來說的
9、mybatis快取 以及談談你們專案為什麼用spring mvc+mybatis 而不用Hibernate?
主要是說說一級快取 二級快取 然後 講講mybatis相對於Hibernate來說的優點好處之類
10、專案裡用到了redis 為什麼用它?
巴拉巴拉講了一通業務需要 快取資料 實現會話快取的機制之類
11、.java如何實現多型
講了下過載和重寫
12、談談java的垃圾回收機制
從java提供垃圾回收機制說起,談到了回收時機 何時回收 以及幾個常用的垃圾回收演算法,然後面試官問了解G1嗎,聽過但沒具體瞭解了,實話實說,就沒再繼續了。。
13、談談網頁登入模組裡記住我這個功能?
從session一直到cookie,巴拉巴拉說了下各自的實現原理 以及快取機制。。。
14、談談三次握手四次揮手 以及為什麼是三次 為什麼是四次 一定要是四次嗎?
巴拉巴拉 結合網路中 那兩個圖來就行了,肯定不一定是四次 具體原因 大家知道。。。
15、如果讓你設計一個大型網站,你覺得哪些東西是需要考慮的 為什麼?
巴拉巴拉 談了負載 談了快取 談了框架 然後面試官繼續問 就這些嗎 然後繼續扯 伺服器 接著扯 。。。。
16、資料結構學的怎麼樣 演算法這塊?
還行吧,一直有刷題(其實是最近才刷 想哭)
好吧 問的差不多了 今天到這裡吧,這兩天手機保持通暢,然後問我有什麼問題要問的,然後我就問了團隊,問了面試情況,問了招聘最後會考慮學校嗎 實在沒底 因為看小哥聊得挺好 所以才敢問的。。。。

技術二面;
1、三次握手四次揮手
(其實沒搞明白為毛mt這麼喜歡問這個問題 之前看面經好的童鞋提到了這個問題 還有就是沒讓自我介紹 我以為是要走過場了)
2、sql注入瞭解麼
談了下 注入的原理 以及登入功能模組中 sql注入的 實現
3、集合框架肯定經常用吧?
於是自覺的從Collection聊到list arrayList vector LinkedList set map HashMap hashtable都通通扯了一遍,語速太快 感覺就跟背書一樣 面試官笑逗了,就說 小夥子背的不錯嗎,面試寶典沒少看吧 我無語!!接著就繼續說,你剛剛說的那些都是比較淺的東西,我問個比較基礎的吧,你知道HashMap的資料結構和實現原理吧? 陣列和連結串列的結合體 順便談了下底層陣列Entry 實現原理這塊 主要是說了下 hashing、put和get的實現過程,以及當遇到空值以及當兩個鍵有相同hashcode值的處理。。。然後問我知道ConcurrentHashMap不 於是又講了下這個和synchronizedMap的區別 以及 效率問題。。。
4、談談volatile
。。。。然後又問知道ThreadLoca不。。。。。
5、寫程式碼:解決生產者消費者問題
用了Semaphore手寫的程式碼 大概花了一些時間 跟面試官講了下實現。。。
6、問設計模式,百問不爽的答單例模式 讓說了四種單例模式的實現辦法?餓漢式 飽漢式 列舉 然而我只說了這三種(好像還有一種最佳實踐 用內部類來實現)。。。
7、問了下java記憶體模型 講了下垃圾回收演算法
又是一通巴拉巴拉 比較了各個演算法的優劣和問題之類的。。。再問G1,幸虧一面後來去看了下,於是說了下大概的認知。。。
8、Java記憶體洩露的問題
大致又扯了下垃圾回收 然而好像不是面試官要的答案 尷尬。。。。
9、談redis和memcached
。。。。
10、用過NIO麼,沒用過(我是講真話沒用過 不敢說用過)跳過
11、聊get post,http狀態碼,http header
巴拉巴拉說了下自己瞭解的,不是很滿意感覺。。。
12、講ssh搭建
。。。。
13、談spring mvc
。。。。
這講框架的兩個問題 就跟聊天一樣 你一句我一句的。。。。
14、談spring的事物管理
。。。。
15、談執行緒池
。。。。。
16、你有師兄之類的在mt麼 為什麼想來mt
巴拉巴拉。。。。
最後沒讓問問題 沒說下一面任何事情(以為掛了)

技術三面:
1、自我介紹+專案
。。。
2、懟專案,死懟,談業務需求,談遇到的問題
。。。。
3、還是專案,你在專案中做了以圖搜圖,你是怎麼實現的,談談你的處理過程?
談了下影象檢索的認識 聊了下自己用的sparse coding演算法 談了下降維演算法 說了一大通 不知道面試官挺懂沒。。。。
4、講下資料庫優化
主要說了索引、資料庫結構優化,然後牽扯出紅黑樹,讓手撕紅黑樹,然而寫不出來,講了下大概實現。。。資料庫結構優化主要講了下在專案中做到的表拆分和分割槽。。。
5、談談tomcat伺服器
巴拉巴拉。。。。
6、講下sql的left join、right join、inner join
這個簡單。。。。
7、談spring的過濾
大致講了下登入過濾的實現。。。
8、繼續談spring mvc的分層 以及問了些常用的註解
。。。
9、談談IOC
。。。。(又一送菜題)
10、連表查詢:笛卡爾積通過什麼連線得到sql
巴拉巴拉 談笛卡爾積的實現。。。。
11、對‘a’,‘b’,‘c’,‘d’排序,排成指定的順序
這個我不會。。。
12、算n個數內的質數的和
這個簡單,用一個數組儲存所有質數 然後計算陣列的sum即可。。。
13、一個圓環上有n個點 a從任意一個點出發 到達下一個點都需要Ag能量,每一個點都有cg能量補給,假設a最初有Bg能量,問a最初Ag能量為多少能保證a繞圓環一週。。。
最後一個問題大致是這樣的。。。。。
14、談談自己的學校
第一次遇到這樣的問題,還是技術面裡。。。。。。。

hr面:
1、why投mt
。。。。。
2、why投外賣配送bu
。。。。
3、自己最想從事什麼行業
。。。。。
4、為什麼打算在上海工作,打算長期發展嗎?
。。。。。
5、三個詞語概括自己的性格
。。。。。
6、為什麼讀研?
。。。。。
(又一次遇到這個問題 第二次了 因為是工作的時候考研的)
7、換我來問問題了。。。。

大概想起來的就上面那些 技術面的比較深刻 就大概記錄下吧 很多問題 回答起來估計要很多時間,大家參考參考就行 祝大家早日收到offer。。。。

PS:等校招完成有空的話 博主在把這些問題的答案總結出來,目前還是準備校招為主。。。