1. 程式人生 > >一年java菜鳥的面試之路

一年java菜鳥的面試之路

華為社招(三面+機試+性格測試)

1.介紹專案

2.說一說git分支的概念

3.arraylist和linklist的區別

4.資料庫鎖和隔離級別,你專案中怎麼加的鎖,分散式鎖瞭解過嗎

5.jvm瞭解過嗎,說一說有什麼

6.執行緒的幾種狀態,多執行緒的排程

拖了很久,沒有收到offer,據說是沒hc號

一、新浪(一面)

1.說說jvm

2.osi七層模型,http在哪層

3.執行緒A,B,C,順序執行的方式

4.說說gc,minor gc 和full gc 的區別

5.說說aop,aop有什麼不好的地方

6.restful是什麼,瞭解過嗎

二、新華三(筆試+技術兩面+主管面+hr面+領導面+offer)

筆試題 時間一個小時,java基礎,20個不定項選擇,6個簡答題,3個程式設計題

簡答題裡:簡述工廠模式,反射機制,抽象類和介面的區別,多執行緒同步的方法,==和equals的區別,記憶體洩漏的幾種情況

程式設計題:進位制轉換,隨機密碼,io讀取檔案內容

一面,主要看著筆試題問了一下 集合類有哪些,有什麼區別,執行緒安全的集合類;迭代器;fail-fast機制;hashmap遍歷;重寫equals需要注意什麼,為什麼;抽象類和介面;final和finally的區別;記憶體洩漏還知不知道其他的;類鎖和物件鎖的區別, 某個場景下是否互斥;值傳遞,引用傳遞的情景。

二面,估計是專案經理問,聊了一下以前的工作,問了問用沒用過mysql,知不知道mysql叢集,然後還問了一面中問的幾個問題

三面電話面,集合類,jvm等,springmvc的過程,子網掩碼的用處,交換機,路由器轉發等;資料庫隔離級別,四種說一說是什麼以及髒讀,不可重複讀(讀到修改的相同欄位),幻讀(讀到另外一個事務插入的資料);類載入;虛擬機器;專案情況;

四面 hr面:自我介紹,為什麼離職,自己相比較於其他人的優點

五面 領導面:詢問一下情況,簡單介紹一下部門情況

 

三、小悟科技(兩面+hr面+offer)

1.arraylist和linklist的區別,linklist的連結串列是雙向的

2.hashmap和hashtable,concurrenthashmap (分段鎖,二次hash)

3.oracle和mysql分頁有什麼區別。(回答的oracle用的rownum,mysql用的limit)

4.索引瞭解過嗎,什麼時候建索引

5.設計模式瞭解過嗎,spring中用到了哪些設計模式

6.如何將一個單向連結串列反轉

7.http瞭解嗎,為什麼是三次握手,不是兩次也不是四次

8.設計一個登陸模組,怎麼加密的(讓實現前端向後端加密,密文是變化的)

 

四、香格里拉酒店開發部電話面

1.快排瞭解嗎,說一下排序思想

2.執行緒池知道嗎,說一下執行緒池中幾個引數的意義

3.類載入機制(Student student = new Student() 說一說載入過程,有靜態屬性,有父類)

4.maven 如何解決包衝突

5.spring,用了spring 的什麼,ioc和aop,說一說spring中怎麼用的,怎麼實現的瞭解嗎,專案中有沒有用自己實現的功能

6.springmvc底層是怎麼實現的。

7.hashmap和hashtable哪個是執行緒安全的,為什麼,concurrenthashmap用過嗎

8.java的三個特性,繼承封裝和多型。怎麼實現多型,有什麼好處

9.分散式鎖。

10.資料庫sql優化了解嗎,如何進行優化,如果知道用了索引,如何看查詢過程中索引是否生效。

11.redis用過嗎,專案中怎麼使用的,儲存結構等等(回答的簡單,沒有深入問)

12.ngnix反向代理怎麼用的

13.linux用過嗎

14.有沒有自己實現過servlet

 

五、滴答出行(筆試+兩面+offer)

筆試題比較簡單,一共五道題,主要考察最後一道程式設計題(先自己想辦法實現,面試官會引導到用double check實現那個功能,比較簡單)

一面:

1.jvm

2.介紹gc,物件初始化時如何分配,什麼時候進行gc

3.stop the world

4.談談阻塞io和非阻塞io

5.裝飾者模式和代理模式有什麼區別

6.工廠模式

7.actor瞭解過嗎

二面:

1.一個檔案中有很多電話,有固話和行動電話,現在需要把一個電話找出來,口述一下過程,(不能遍歷查詢,只要時間複雜度小於o(n)就可以)

2.問了幾個數學問題

 

六、今日頭條

面試的部門是做內部系統開發的部門

演算法程式設計+面試

1.三道演算法題,任選一道在30分鐘內用程式實現。

選擇的是一道求積水體積的問題,網上有。

2.聊一聊專案中你覺得做的最好的一塊,以及你覺得你解決的最好的一個問題

3.手寫sql

4.oom

...

還有一些問題記不清了,一面大概一個多小時,然後就被通知可以回去了。