2020年,面試就靠它們了,現(xiàn)在每天刷題,看源碼文檔,最近看的這些題目還是有些難度,有一部分我都要好好想一想才能回答出來,或者回答不出來,總的來說知識寬度夠了深度還跟不上。所以要重點突破下底層的東西。這篇文章我總結(jié)了很久,希望對正在準備面試的同仁們有點幫助。沒錯我就是傳說中的面霸?。?/p>
一. 面試準備
首先,是筆試題,這點是初級程序員繞不過去的坎。
筆試題一般的公司都會出的,除非你是大牛,可以選擇不做。所以,還是老老實實的準備吧。
這里列舉下一些比較常見出現(xiàn)的問題
JAVA
5個常用的java-api包。
String類中常用的5個方法。
API接口開發(fā)的注意事項。
TCP/IP、HTTP協(xié)議。
集合相關(guān)的問題(重點)
HashMap、TreeMap、Hashtable、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList的實現(xiàn)和區(qū)別之類的。
上述集合中的那些是線程安全的,那些不是。
在那些場景使用這些集合。
List、Map、Set三個接口,存取元素時,各有什么特點。
線程相關(guān)問題(重點)
創(chuàng)建線程的幾種方式。
線程同步的方法。
wait和sleep區(qū)別。
Runnable接口和Callable接口的區(qū)別。
如何實現(xiàn)線程安全。
框架相關(guān)知識(這塊反而不多)
Mybatis#和$的區(qū)別.
Hibernate和Mybatis的區(qū)別。
Spring MVC和Struts2的區(qū)別.
Hibernate的緩存機制。
什么是Hibernate延遲加載.
為什么要用spring。
SQL(主要考察Group by和Order by相關(guān)知識)
查詢每個班級成績最高的學(xué)生。
查找出每個班級成績第二的學(xué)生。
按照班級查詢每個班上總分前三的學(xué)生。
查找入職員工時間排名倒數(shù)第三的員工所有信息。
薪水排序后薪水排名在第2--8的員工。
按工資進行排名,排名從1開始,工資相同排名相同(如果兩人并列第一則沒有第二名,從第三名繼續(xù)排)。
用一條sql語句取出所有姓名有重復(fù)的學(xué)員姓名和重復(fù)的記錄數(shù)。
JavaScript/JSP/Servet (這些一般是基礎(chǔ)題)
JSP的內(nèi)置對象以及作用。
JSTL的常用標簽。
Servlet的生命周期。
URL和URI的區(qū)別。
Ajax同步和異步的區(qū)別。
使用ajax發(fā)送異步請求的流程。
其它
&和&&的區(qū)別。
==和equals的區(qū)別。
int和Integer的自動拆箱/裝箱相關(guān)問題。
IO和NIO的區(qū)別。
final、finally、finalize的區(qū)別。
重載(Overload)和重寫(Override)的區(qū)別。
String、StringBuffer和StringBuilder的區(qū)別。
如何實現(xiàn)淺克隆和深克隆。
單例模式的實現(xiàn)以及最優(yōu)。
排序的實現(xiàn)(冒泡、選擇、快速等)。
去除重復(fù)的元素(實際是重寫equals和hashcode)。
二.面試流程
現(xiàn)在有不少公司先是人事面試,然后技術(shù)面試。所以在人事這塊談?wù)摴べY的時候,最好不要說死,或者先不談,留著技術(shù)面試過了之后再談。有點因為在工資待遇這塊沒談好,就直接走人了。畢竟面試雙方都要花費不少時間,所以這塊需注意!
在相談的時候,要注意禮貌,無論是否成功,都應(yīng)該注意言行和態(tài)度。
在面試結(jié)束之后,理應(yīng)說聲感謝!畢竟面試其實也是成長的一種。
三.面試技巧
個人能力這方面無非兩個方面,廣度和深度。
技巧很簡單,就是說自己擅長的。技術(shù)掌握廣,但是不深,就可以將自己的技術(shù)廣度多說點,順便可以提下自己的優(yōu)點例如:學(xué)習(xí)新技術(shù)很快;技術(shù)掌握深,但是不廣,就可以將掌握的深度多說點,可以提下自己在學(xué)習(xí)這塊的專研度。如果在這兩點都沒有太明顯的優(yōu)點的,可以嘗試從項目業(yè)務(wù)說,最好將項目吃透。與面試官相談的切記要誠實,不要弄虛作假。碰到不會的或者了解不深的,直接跳過,最好將面試官引導(dǎo)到自己擅長的領(lǐng)域。