更新時間:2019-09-28 09:00:00 來源:動力節點 瀏覽2277次
語言是學習成本比較低的,Java作為一種高級語言,其相關語法相對簡單,各種類庫、框架封裝的都相對好,而且相關生態也比較好(百度、google可以快速檢索,github也有很多相當優秀的資源),Java類庫的使用與C++的STL有很多類似的地方(STL的類庫是基于C的template的規則衍生出來的,而Java的類庫就基礎實現來說我理解也是template,通過將基礎功能模版化封裝好,這其中涉及到范型等語法)。而Java類較C++而言,C++的虛函數被java中的接口取代;較C而言,C中的結構體也就是Java中的類;所以將Java與大家最常使用和學習的C/C++做類比,會發現Java的語法有很多其他語言的影子,尤其C/C++。
上面建紹了小編對Java的理解,現對其基礎語法學習推薦一本書:《Java編程思想》,Java編程神書,適合打基礎使用,但是相對較貴,可以搜索電子書進行閱讀。java基礎語法學習外,要懂的主要幾個點:八個基礎類型與其對應的類的裝包和拆包(主要是對應類的底層數據結構,重點);collection類、map類(collection類要會畫它的類圖,map類要懂hashmap的底層數據結構,curruenthashmap的底層數據結構,Java1.8之前和之后的不同等等),并且要理解哪幾種是線程安全的類(舉例:curruenthashmap、vector、hashtable);最基礎的類object的三個方法的具體實現,add、hashcode、equal。
高級進階:
已經有了相對較好的java基礎后,需要學習一些java使用較高級的東西,大體有兩方面,一個是并發,一個是JVM(java虛擬機),分別推薦兩本書吧:《Java并發編程的藝術》、《深入理解Java虛擬機》,前者較好的講解了java中并發編程的實現,內容通俗易懂,主要理解volitile和sychornizer,涉及到底層封裝,主要是通過CAS和AQS實現的,而原子類、JUL下的工具類等實現也是上述兩種方法實現的,而并發最重要的技術體現就是線程池技術(此處是重點,源碼)和鎖(主要理解對象的頭部markhard部分,在此基礎上學習下重入鎖、讀寫鎖,而悲觀鎖、樂觀鎖、輕量鎖、重量鎖等概括要通過相應的關鍵字來理解);后者較深,不建議Java入門學習,只要對JVM底層結構有一定了解,對內存模型有概念,對GC的實現理解其算法和流程就好。
Java面向對象編程,面向對象編程的一個特點就是有很多設計模式,比如單例模式(懶漢和餓漢)、工廠模式、策略模式、迭代器模式、服務端和客戶端模式等等,這些設計模式可以看一些書學理解一下精髓,推薦《設計模式解析》,設計模式只要先懂精髓就好,這個跟jvm比較相識,在實際工作中理解效果更好,)世界上本沒有路走的人多了也就成了路(,一個道理的。
框架相關:
經典的SSM框架(spring、springMVC、mybatis),要對其使用、結構、源碼實現有一定理解,其中spring的IOC和AOP,springMVC和服務器/bean層的關系及實現,mybatis的源碼實現(mybatis源碼流程相對簡單,便于學習java代碼)。現在用的最多的是springboot,便于快速構建,但是缺點是缺少對具體實現的感知,需要有SSM或SSH的組合理解(不推薦SSH呀,太老了)。
Netty框架是一種網絡通信框架,基于Netty可以實現客戶端和服務端的消息通信,基于Netty可以學習一下NIO的具體實現(AIO,BIO最好懂一下原理)。
常用技術棧:
數據庫技術懂mysql就好,會用最基本的select、delete、update、query(orderby,groupby)就好,最好會用index(索引,公司用的比較多的內容,基于紅黑樹),自己可以試著建表,多線程訪問增刪改查,看看效果。數據庫的四大特性及引入的三大問題,及解決問題的四大隔離事務都要懂。
web相關技術,需要懂一下http、https協議,對request和response相關字段要理解,可以通過postman在網上找一些例子進行學習。而且要懂socket編程,不管是Java還是其他語言,socket編程都是最基本的服務端和客戶端的通信方式。
linux的常用命令一定要會用(自己多用用就好了),并且最好試著跑一下服務端程序,試試效果。git也要會用,可以在github上建立一個庫,上傳自己開發的程序。
以上就是動力節點java培訓機構小編介紹的“Java學習計劃,給自己一個學習線路”的內容,希望對大家有幫助,更多java最新資訊請繼續關注動力節點java培訓機構官網,每天會有精彩內容分享與你。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習