{eval=Array;=+count(Array);}
很久沒有面試過一年Java開發(fā)經驗的小伙伴了,那如果你是一年開發(fā)經驗,并且已經通過了前面的初篩,也就是已經約好面試時間了。
現在開始咱們的面試。
面試官:您先自我介紹一下吧~
候選人:我畢業(yè)于xx大學計算機科學與技術專業(yè),工作經驗一年,工作期間主要負責xx項目的xx功能開發(fā)。熟悉的技術棧有Java基礎,集合,多線程等知識,熟練使用SpringBoot框架。
PS:廢話不要多說,說你真實的開發(fā)項目經驗和你真正熟悉的技能棧。
面試官:ok,好的,那咱們先聊點Java基礎吧,HashSet在項目中用過嗎?它的底層實現你了解嗎?
候選人:HashSet底層是HashMap,HashSet里的每一個元素就是HashMap里面的key。
面試官:那比如現在我要裝一個User對象進去,比如Set<User> users = new HashSet<>(10);那么對于這個User對象有沒有什么要求?
候選人:需要重寫hashCode和equals方法。
面試官:ok,為什么要重寫hashCode和equals方法呢?
候選人:首先,HashSet的特性是不可重復的并且是無序的。因為它的底層是HashMap實現的,HashMap的key就是HashSet的元素,所以他無法保證有序。那不可重復的就是當我們put一個KV數據到HashMap中去的時候,首先需要計算這個key的hashcode,然后在和當前hashMap的容量-1作與元算,即hashcode(key) & (n-1)來計算出他所在hashMap數組中的下標位置,這就是為什么要實現它的hashcode方法。那為什么還要實現equals方法呢?因為hashcode方法存在哈希沖突,無法決定一個對象的唯一性。
ps:能說到這你就成功了一半了!但是還沒結束,因為面試官想知道你到底了解多少!
接下來會是什么問題呢?
先就這些吧,上面你能聊到哪就聊到哪,都是Java基礎,不會了咱就停止,換一個方向~
后面會在問你數據庫方面的知識,比如Innodb存儲引擎的實現原理,B+樹,為什么不用B樹、二叉樹等等。
什么是聚集索引、什么是非聚集索引、覆蓋索引?回表是什么意思?
還有很多數據庫的知識,有一句話叫做:“你會的越多,你不會的越多!”
如果上面你都ok,不需要問你項目經驗,來干活吧!畢竟你只有一年工作經驗,沒啥項目可問的,又不是你主導的。
實在上面答的不好,只能問問你項目中的開發(fā)思路怎么樣了,會嘗試找你開發(fā)功能的漏洞,看你怎么臨場發(fā)揮,說說你的思路,看看你的邏輯思維是否嚴謹。
以上,看看是否你都會,如果你都會,抓緊學習更多的知識去!如果你不會,抓緊學習更多的知識去!學無止盡~
上面的那些,由淺入深,五年十年的都可以問,有人說工作很多年的沒必要問這些基礎,我不這么認為。如果你開發(fā)多年,這些基礎我認為你應該是深入骨髓的,無須準備便可脫口而出的,其他任何理由都是借口。
1、java基礎知識是重點,例如集合、多線程、IO等基礎知識的掌握程度。
2、框架方面,例如spring,mybatis,springboot等使用的熟練程度和對其理解程度。
3、部署方面,例如tomcat、linux等了解多少。
4、數據庫方面,例如基本的增刪改查,對sql優(yōu)化了解多少,對索引了解多少
5、解決問題方面,例如:說說你遇到的很難處理的問題,怎么解決這個問題的?
6、對項目的熟悉程度,這個是看你是否真的做過項目。
注:看過源碼,了解底層,對框架的原理理解很深會是加分項。
問點JAVA基礎知識,偏向規(guī)范類的
問點你簡歷上做過的內容
問點數據庫基礎,多表查詢,匯總之類的
問點框架實際用到的(結合將要安排你的工作內容問)
說明:一年工作經驗太深的內容沒什么可問的。不想面試造火箭,工作擰螺絲的那種。既然篩選讓來面試,你之前一年多工作經歷很契合現在公司的業(yè)務,所以問點實際的。性格好,好培養(yǎng),腳踏實地愛學習就可以。
當然了,每個公司對一年開發(fā)經驗的工程師所必須掌握的技能定義是不一樣。
作為面試官,就拿我們公司來說吧:首先重要的是邏輯思維要清晰,其次我們再說技能吧。
都是虛擬機之類的,我面試神舟航天的實施,問的都是很底層的東西,還有學好linux,數據庫,開發(fā)的話應該會問一些框架吧,分公司,要是普通公司問ssm,要是好一點可能會springcloud之類的,還是看個人能力,因為都不咋會,還得進企業(yè)去鍛煉,建議一般不要從事軟件工程專業(yè)。
java的基礎方面的:
String,StringBuffer,StringBudilder區(qū)別
ArrayList,vector 等的區(qū)別
hashMap,hashTable 的區(qū)別
多線程的實現方式和方法了
傳參數方面的 :
考傳的是本身還是副本
如 a(String value); a方法的value參數是傳本身還是副本
框架知識:
比如spring 依賴注入,事務深入點的話 攔截器等
db方面的:
簡單考下你的sql , 可能會寫幾個表 要查什么讓你寫sql 主要考多表連接查詢,分組,分組后的查詢,排序,取最大最小之類的 看你sql熟練否
有沒有找到住的地方?
和家里人打過電話要出來工作了吧?
0
回答0
回答0
回答0
回答0
回答0
回答0
回答10
回答0
回答0
回答