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