我本身總結的Java學習的系統知識點以及面試問題,目前已經開源,會一直完善下去,歡迎建議和指導歡迎Star: https://github.com/Snailclimb/Java-Guidejava
筆者建議初學者學習Java的方式:看書+視頻+實踐(初學最難的問題其實仍是在環境)git
Java學習書籍推薦
《Head First Java.第二版》:
能夠說是個人Java啓蒙書籍了,特別適合新手讀固然也適合咱們用來溫故Java知識點。程序員
《Java核心技術卷1+卷2》:
很棒的兩本書,建議有點Java基礎以後再讀,介紹的仍是比較深刻的,很是推薦。github
《Java編程思想(第4版)》:
這本書要常讀,初學者能夠快速概覽,中等程序員能夠深刻看看java,老鳥還能夠用之回顧java的體系。這本書之因此厲害,由於它在無形中整合了設計模式,這本書之因此難讀,也偏偏在於他對設計模式的整合是無形的。web
一些Java方向學習書籍彙總(PDF僅爲預覽版本,建議購買正版):面試
連接:https://pan.baidu.com/s/1g0mjyJX5ZWU706IKjDSzeg 密碼:b88d編程
Java學習視頻推薦
Java工程師學習路徑完整版 (慕課網Java工程師路徑)另外你們也能夠關注微信公衆號:「Java面試通關手冊」 後臺回覆關鍵字 「資源分享第一波」 便可領取黑馬內部Javaweb工程師以及大數據工程師相關視頻以及配套資料。設計模式
如下視頻整理自慕課網Java工程師路徑相關免費課程。數組
Java基礎面試常見問題彙總
超詳細的Java面試題總結(一)之Java基礎知識篇安全
- 重載和重寫的區別
- 自動裝箱與拆箱
- 成員變量與局部變量的區別有那些?
- 靜態方法和實例方法有何不一樣?
- equals 和 == 的區別?
超詳細的Java面試題總結(二)之Java基礎知識篇
- 建立線程有幾種不一樣的方式?你喜歡哪種?爲何?
- 線程有哪些基本狀態?這些狀態是如何定義的?
- finalize()方法何時被調用?析構函數(finalization)的目的是什麼?
超詳細的Java面試題總結(三)之Java集合篇常見問題
- List,Set,Map三者的區別及總結
- Arraylist 與 LinkedList 區別
- ArrayList 與 Vector 區別(爲何要用Arraylist取代Vector呢?)
- HashMap 和 Hashtable 的區別
- HashSet 和 HashMap 區別
- HashMap 和 ConcurrentHashMap 的區別
- HashSet如何檢查重複
- comparable 和 comparator的區別?
- 如何對Object的list排序?
- 如何實現數組與List的相互轉換?
- 如何求ArrayList集合的交集 並集 差集 去重複並集
- HashMap 的工做原理及代碼實現
- ConcurrentHashMap 的工做原理及代碼實現
- 集合框架底層數據結構總結
- 集合的選用
- 集合的經常使用方法
- 集合的選用
超詳細的Java面試題總結(四 )之JavaWeb基礎知識總結
- 簡述Servlet
- 闡述Servlet和CGI的區別?
- Servlet接口中有哪些方法及Servlet生命週期探祕
- get和post請求的區別?
- 轉發(Forward)和重定向(Redirect)的區別?
- Servlet與線程安全
- JSP和Servlet是什麼關係?
- JSP工做原理:
- JSP有哪些內置對象?做用分別是什麼?
- Request對象的主要方法有哪些?
- request.getAttribute()和 request.getParameter()有何區別?
- JSP九大內置對象,七大動做,三大指令-
- 實現會話跟蹤的技術有哪些?
- Cookie和Session的的區別?