Java快速學習的方法有哪些
Java快速學習的方法有哪些
Java編程語言,可以算是2017年大家首選的編程語言,也是各種轉行考慮的行業(yè)之一,java語言用獨特的方式在市場站穩(wěn)了腳。所以很多人想學習,但不知道該如何學習,以下是學習啦小編分享給大家的Java快速學習的方法的資料,希望可以幫到你!
Java快速學習的方法
第一步是安裝好JDK,寫一個HelloWorld,?其實JDK的學習沒有那么簡單,關于JDK有兩個問題是很容易一直困擾Java程序員的地方:一個是CLASSPATH的問題,其實從原理上來說,是要搞清楚JRE的ClassLoader是如何加載Class的;另一個問題是package和import問題,如何來尋找類的路徑問題。把這兩個問題摸索清楚了,就掃除了學習Java和使用JDK的最大障礙。推薦看一下王森的《Java深度歷險》,對這兩個問題進行了深入的探討。
第二步是學習Java的語法。Java的語法是類C++的,基本上主流的編程語言不是類C,就是類C++的,沒有什么新東西,所以語法的學習,大概就是半天的時間足夠了。唯一需要注意的是有幾個不容易搞清楚的關鍵字的用法,public,protected,private,static,什么時候用,為什么要用,怎么用,這可能需要有人來指點一下,我當初是完全自己琢磨出來的,花了很久的時間。不過后來我看到《ThinkinginJava》這本書上面是講了這些概念的。
第三步是學習Java的面向對象的編程語言的特性的地方。比如繼承,構造器,抽象類,接口,方法的多態(tài),重載,覆蓋,Java的異常處理機制。對于一個沒有面向對象語言背景的人來說,我覺得這個過程需要花很長很長時間,因為學習Java之前沒有C++的經驗,只有C的經驗,我是大概花了一個月左右吧,才徹底把這些概念都搞清楚,把書上面的例子反復的揣摩,修改,嘗試,把那幾章內容反復的看過來,看過去,看了不下5遍,才徹底領悟了。不過我想如果有C++經驗的話,應該一兩天時間足夠了。那么在這個過程中,可以多看看《ThinkinginJava》這本書,對面向對象的講解非常透徹??上У氖俏覍W習的時候,并沒有看到這本書,所以自己花了大量的時間,通過自己的嘗試和揣摩來學會的。
第四步就是開始熟悉Java的類庫。Java的基礎類庫其實就是JDK安裝目錄下面jrelib t.jar這個包。學習基礎類庫就是學習rt.jar。基礎類庫里面的類非常非常多。據(jù)說有3000多個,我沒有統(tǒng)計過。
第五步,通過上面的學習,如果學的比較扎實的話,就打好了Java的基礎了,剩下要做的工作是掃清Documentation里面除了上面4個包之外的其他一些比較有用處的類。相信進展到這一步,Java的自學能力已經被培養(yǎng)出來了,可以到了直接學習Documentation的水平了。
第六步,JavaWeb編程,Web編程的核心是HTTP協(xié)議,HTTP協(xié)議和Java無關,如果不熟悉HTTP協(xié)議的話,雖然也可以學好Servlet/JSP編程,但是達不到舉一反三,一通百通的境界。所以HTTP協(xié)議的學習是必備的。如果熟悉了HTTP協(xié)議的話,又有了Java編程的良好的基礎,學習Servlet/JSP簡直易如反掌,我學習Servlet/JSP就用了不到一周的時間,然后就開始用JSP來做項目了。
Java學習方法類型
1.看視頻:時間長,要有耐性,估計全看完要1個半月,基本可以學全開發(fā)用的東西,但是對內在原理了解不深??梢栽趧?chuàng)客學院在線視頻學習。闖關式學習。
2.看網上資料,看書:速度因人而已,領悟力強的半個月就能搞定,學的東西還比看視頻多,畢竟學到這階段都有點基礎了,可以研究下程度更深的東西,如果自覺不夠聰明就別勉強了,說不定3個月還云里霧里。
俗話說,師傅領進門。修行在個人,有了明確的java學習路線,java在線視頻后。自己就需要多動手,程序員的世界中能力遠遠大于學歷,關鍵的學習還是靠自己堅持不懈的努力下去。每天多敲一些代碼,多記住一些效果。
提高Java學習效率的計劃
計劃一】透徹理解面向對象
初學Java就像交朋友從陌生到熟悉再到鐵桿搭檔一生相伴,隨著學習的深入,你會發(fā)現(xiàn)學Java并不是想象的那樣枯燥和困難,甚至還有一些美妙之感,這是在擁有強大的技術和出色的設計思想后才能體會的。俗話說“羅馬城不是一天建成的”Java的這種境界也不是一朝一夕可以實現(xiàn)的,但作為初學者可以通過制定一些合理清晰的學習計劃,在幫你屢清楚思路的同時還能有效提高學習效率。
【計劃二】掌握核心的API
看著容易做著難,能理解的不一定會做,學Java也是這樣,理論知識掌握的再熟練,如果不了解語言構成核心API那一切都是0!就Java語言而言,你應該對它的API有非常強的實戰(zhàn)經驗,例如java.lang.*,IO,Exception(異常),Collections(集合),Generics(泛型),Threads(線程),JDBC(數(shù)據(jù)庫連接)等等。如果你夢想是成為一個出色的網絡應用程序的開發(fā)者,不管你用什么類型的框架,你都必須要熟悉Servlet和JSP。
【計劃三】堅持不懈寫代碼
實踐是檢驗理論的唯一標準,只有寫代碼才能讓你真正意識到問題的深刻度,不斷發(fā)現(xiàn)編程語言的局限性和解決問題的方案。對初學者來說提升編程質量的唯一途徑就是不停的敲代碼,哪怕是一個很簡單的問題,將它用代碼實現(xiàn)并運行,這才是學習編程唯一可行的途徑??垦劬κ菍W不會編程的,對于初學者除了練習別無它法!
【計劃四】加一些學習氛圍好的交流論壇
記住,你不是一個人在戰(zhàn)斗,有很多人他們和你一樣,在同一個起跑線上奮斗著。使用框架實現(xiàn)一個簡單的程序不是真正的挑戰(zhàn),當你真正成為一個開發(fā)工程師的時候,你會發(fā)現(xiàn)很多奇怪的問題是靠說明解決不了的,你需要依靠一些人給你提供學習線索,哪怕是只言片語都有可能幫你走出困境,領你感恩不已??鬃釉唬喝诵?,必有我?guī)?,在開發(fā)領域這句話絕被奉為經典并不斷的得到驗證,作為初學者,不要放過一個可能領你提升的機會,尋找一些好的論壇,不懂就問,問題解決一個少一個,自己也會不斷進步。當然你也要學會分享,把自己的經驗和想法分享給和到和你曾經遇到一樣問題的人,幫助他們的同時也鞏固了自己的知識,懂得分享亦是進步。
【計劃五】尋找經典技術博客
上一條剛說了,你不是一個人在戰(zhàn)斗,在網絡上有很多技術牛人都通過博客來分享自己的技術經驗和編程心得,你只需要勤奮一些去發(fā)現(xiàn)這樣的博客,每天去閱讀他們的技術文章,能吸收到不同人對同一技術的經驗可看法,或許他們會為某一項功能而爭執(zhí)不休,你不需要去理會,在“觀戰(zhàn)”的時候要去分析各種觀點,逐漸形成自己的思想,久而久之你會明顯感覺到自己在程序設計上的提升,這就是進步。
【計劃六】閱讀開源框架源碼
一個合格的開發(fā)者必先能靈活的使用各種框架,而要想成為一個出色的開發(fā)者,就應該不斷的去學習流行框架的源碼,這樣在深入了解框架內部機制的同時還能得到大量的練習,逐步豐富自己的代碼設計思想,做一個代碼的創(chuàng)造者而不是代碼的復制者。
【計劃七】接受有效的指導或者參加培訓
在編程的路上別人的指導有著至關重要的作用,有效的指導可以讓你免走彎路,更快的得到自我提升。優(yōu)秀的開發(fā)工程師為什么待遇高而且在項目中有著舉足輕重的作用,主要是因為他們不僅能夠把握項目開發(fā)的正確方向,還能帶領團隊其它成員提升自己的開發(fā)水平,這是任何一個企業(yè)都企求的也是初出茅廬的Java人員所渴望的。在Java的學習階段,專業(yè)的Java培訓可以大大縮短學習時間,提高學習效率。Java初學者眼中不可逾越的困難,很可能是一個Java開發(fā)經驗豐富的人幾句話就能搞定的。你所學的知識不可能都來自教科書,培訓可以接觸到更多人,人脈的積累就是經驗的積累還可能轉化為財富的積累。
【計劃八】了解未來技術的發(fā)展方向
兩耳不聞窗外事,在如今是不合適的,尤其是在瞬息萬變的互聯(lián)網時代,作為一個開發(fā)者技術跟不上可以去專研,思想要跟不上,你辛辛苦苦剛做出來的產品可能已經落后了,或者只是一個微不足道的小功能,思想跟不上,就不能掌握主動,還可能會被產品經理抱怨技術落后什么功能都實現(xiàn)不了,這絕對是一個打擊!所以在低頭看代碼的時候,一定要打開雙耳,洞察技術的發(fā)展方向,保持領先才能立于不敗。
【計劃九】收集有用代碼和工具會帶來更多便利
軟件的日益流行和Java的豐富的資源,注定一些代碼要重復使用,伴隨著你的工作經驗的積累,這樣的重復性工作可能越來越多,所以你要學會整理并收集一些常用代碼,在比如:log4j的配置文件(log4j.properties),JDBC配置,框架的配置等,還有工具類的例如StringUtils(字符串工具),DBUtils(數(shù)據(jù)庫工具)等等,這會對給你以后的工作帶來極大的便利,雖然做這些還不夠讓你成為一個出色的開發(fā)者,但試想一下如果你的同事或者朋友讓你幫忙寫一個功能代碼,你只要復制粘貼然后稍微做做修改就可以完成,這個過程可能不足5分鐘,那時候你的同事和朋友一定會對你刮目相看,不僅如此你還節(jié)省了自己的時間,走一個捷徑幫你省去不少麻煩,還賺到了人品。
【計劃十】經常記錄你的想法和創(chuàng)意
在學習中你可能靈光一閃,有了一個特別好的想法,或者突然想明白了一個一直困擾自己的麻煩,用筆記錄下來,時間長了你的思維越來越廣闊,你會清楚的發(fā)現(xiàn)自己屬于什么類型的學習者,在遇到困難時又是以何種心態(tài)何種方法解決的,它就是你的成長日記。同時,作為一個熱愛分享的人,你的經驗和想法不要忘記拿出來分享到你的論壇和博客,幫助一些曾和你一樣需要幫助的人,在Java的世界里,資源共享是推動技術進步的主要力量。