管理專業畢業~,後自學JAVA開發!
工作的第一年很容易總結------------浮躁。不管是在公司的工作還是自己的學習,都是浮躁,
首先是周圍環境因素影響(os:其他人,其他項目組下班那麼早,為什麼我們還在做。。。。其他人的領導那麼好,為什麼我們的領導。。)
其次是學習態度,由於工作的繁重和壓力,自己其他的學習時間就被本能的捨棄了(為什麼我工作都這麼累了,我回去就不能好好休息一下嗎?感覺大多的知識和技術應該是再項目中學習到的。。。。)
再然後是個人性格(有了一點小的成就就沾沾自喜,感覺自己牛逼了~,止步不前)
等等
相信也會有人遇到這種問題,在工作的時候根本沒有意識到,知道因為種種原因,在工作一年的情況下離職後,才漸漸認識到自我。JAVA一年,這是一個尷尬的時間段,不過大多數一年的經驗還是會把自己的基礎打得很牢固,相信也會有種種意外情況,我就是這個意外,在公司一年,寫過很多的前端(dorado框架,國內小眾框架,感覺沒幾個人用的那種),在這個上面花費了很多精力,加上學習態度不端正,錯失打下基礎的過程,喪~~~~~~~~~
找工作-----處處碰壁!!!!!!!
1,spring
2,SSM
3,SSH
4,JSP+Servlet
5,前端
6,常用SQL
就這幾個最基本的東西(JAVA標配),完全是一問一懵逼~!想想離職前的高薪幻想就感覺臉紅~
話不多說~看招
1,專項學習基礎,任何東西都需要基礎,在這個不上不下的經驗下,你的基礎最重要(除非你是專門學習某一塊,且精通~)
2,態度,態度,態度!!!重要的事情講三遍,不要把自己的定位放太高。
3,有計劃地學,有計劃地找(首先廣撒網,各種面試筆試,回來後學習,幾個來回,感覺基礎知識就差不多了,然後在基礎的知識上稍微多瞭解一些之前不會的,跟人家公司的技術人員有話聊。感覺差不多了,找到之前想去的公司,使勁投簡歷,多投幾次,有可能沒有看見什麼的,之後的把握應該大很多)
4,待續~~~
1.面試準備
1)背個雙肩包
2)換一身清爽的服飾
3)相關資料
2.面試流程
1)讓你自我介紹
2)問Java基礎知識
3)問項目
4)情景問題,例如:你的一個功能上了生產環境後,服務器壓力驟增,該怎麼排查。
5)你有什麼想問面試官的
3.面試常問的知識點?
1)集合相關問題(必問):
HashMap、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList的底層實現。
HashMap和Hashtable的區別。
ArrayList、LinkedList、Vector的區別。
HashMap和ConcurrentHashMap的區別。
HashMap和LinkedHashMap的區別。
HashMap是線程安全的嗎。
ConcurrentHashMap是怎麼實現線程安全的。
2)線程相關問題(必問):
創建線程的3種方式。
什麼是線程安全。
Runnable接口和Callable接口的區別。
wait方法和sleep方法的區別。
synchronized、Lock、ReentrantLock、ReadWriteLock。
介紹下CAS(無鎖技術)。
什麼是ThreadLocal。
創建線程池的4種方式。
ThreadPoolExecutor的內部工作原理。
分佈式環境下,怎麼保證線程安全。
3)JVM相關問題:
介紹下垃圾收集機制(在什麼時候,對什麼,做了什麼)。
垃圾收集有哪些算法,各自的特點。
類加載的過程。 雙親委派模型。
有哪些類加載器。
能不能自己寫一個類叫java.lang.String。
4)設計模式相關問題(必問):
先問你熟悉哪些設計模式,然後再具體問你某個設計模式具體實現和相關擴展問題。
5)數據庫相關問題,針對Mysql(必問):
給題目讓你手寫SQL。
有沒有SQL優化經驗。
Mysql索引的數據結構。
SQL怎麼進行優化。
SQL關鍵字的執行順序。
有哪幾種索引。
什麼時候該(不該)建索引。
Explain包含哪些列。
Explain的Type列有哪幾種值。
6)框架相關問題:
Hibernate和Mybatis的區別。
Spring MVC和Struts2的區別。
Spring用了哪些設計模式。
Spring中AOP主要用來做什麼。
Spring注入bean的方式。
什麼是IOC,什麼是依賴注入。
Spring是單例還是多例,怎麼修改。
Spring事務隔離級別和傳播性。
介紹下Mybatis/Hibernate的緩存機制。
Mybatis的mapper文件中#和$的區別。
Mybatis的mapper文件中resultType和resultMap的區別。
Mybatis中DAO層接口沒有寫實現類,Mapper中的方法和DAO接口方法是怎麼綁定到一起的,其內部是怎麼實現的。
7)其他遇到問題:
介紹下棧和隊列。
IO和NIO的區別。
接口和抽象類的區別。
int和Integer的自動拆箱/裝箱相關問題。 常量池相關問題。
==和equals的區別。
重載和重寫的區別。
String和StringBuilder、StringBuffer的區別。
靜態變量、實例變量、局部變量線程安全嗎,為什麼。 try、catch、finally都有return語句時執行哪個。
介紹下B樹、二叉樹。
ajax的4個字母分別是什麼意思。
xml全稱是什麼。
分佈式鎖的實現。
分佈式session存儲解決方案。
常用的linux命令。
閱讀更多 Java高級架構技術 的文章