自學 JAVA 的幾點建議

weixin_33806914發表於2018-10-27

微信公眾號:一個優秀的廢人
如有問題或建議,請後臺留言,我會盡力解決你的問題。

3282134-fb370edfe6a60b31.jpg
封面.jpg

前言

許久不見,最近公眾號多了很多在校的師弟師妹們。有很多同學都加了我微信問了一些諸如 [如何自學 Java ]的問題,我都一一解答了,這是大家對我的信任,我非常感謝。你們知道我現在的職業是 java web 開發,可你們你們不知道的是我在這個份職業之前做的是 Android 開發,一年前通過自學才轉過來 java 崗位。下面就跟你們聊聊我的自學經驗以及一些建議,希望能幫助到大家。

瞭解 Java 的前世今生

在學習之前,我相信很多人都是網上直接找教程,開始學。但我跟你們不一樣,我會先去網上找一些 Java 相關的發展史來了解一下,很多人可能疑惑這有什麼用呢?那些發展史又不會幫你提高你的技術。我告訴你們這裡的用處可大了,舉個例子,不去了解你又怎麼會知道 JDK 11 已經出了,JDK 8 是目前最多人使用的版本,而你此時找到的是 JDK 6 的教程,學習一段時間後,你發現你的程式碼跟別人不一樣,殊不知人家用的 JDK 8。那麼這中間你就浪費了許多時間了,所以瞭解一門語言的前世今生是很有必要的。

建立學習大綱

很多人不知道怎麼學,怎麼規劃自己的學習路線。對於這種情況我的應對方法是建立學習大綱,比如 java 基礎,那你就得想 Java 基礎有哪些知識點,然後把它羅列下來做成一個學習大綱或者思維導圖。那你在學習之前,你就跟著學習大綱按部就班地學就好了,哪塊沒攻克的就翻相應的資料重點學習。下面是我整理的簡單版的思維導圖,給你們做參考,你們的大綱不能像我做的這麼簡化,你們要逐項展開,比如說Java 基礎,應該具體到某一個知識點才行,因為越具體,你學得越清晰。

3282134-43b68ded15ba248d.png
Java 學習路線

簡單說一下,上面我整理的學習大綱分為四個階段,對於應屆生來說,把上面前三階段掌握了,找到實習工作完全沒問題。但如果想更進一步,進 BAT 等公司,可能需要把上面四個階段都要掌握了。

PS:重中之重的是 Java 基礎演算法,大廠非常青睞演算法好的應屆生
PPS:推薦一款好用的思維導圖軟體:https://mubu.com/inv/929852
PPPS:以上提到的知識點學習教程領取方式見文末

不要浪費時間在找資料上

自學 Java ,我相信很多人一開始都是煞費苦心找資料的,越多越好,越詳細越好,因為這樣很有滿足感,心裡想著只要我每天堅持看幾個小時很快看完的。殊不知,不斷儲存教程的結果就是某度雲盤裡面躺了一大堆教程,就算是每天不睡覺地看還不一定能看完。自制力好的人,估計在儲存後會翻出來看兩眼,過幾天又忘得一乾二淨了。自制力不好的人更衰,直接讓教程在雲盤裡面積灰。對於初學者來說,只要找到囊括了 Java 基礎的資料就可以開始學了。

切忌眼高手低

有些問題需然看起來很簡單,很弱智,很傻逼。首先,你動手比光看不做敲記憶更牢固;其次,你敲出來可能會有各種各樣奇奇怪怪的問題,而你的水平就是在解決這些問題中提高的。所謂大神都是踩各種各樣的坑才過來的。

善於利用搜尋引擎

遇到問題,第一時間想到的是網上搜尋試試看能不能解決,不能解決再去問人。移動網際網路發展到今天,可以毫不誇張的說,你遇到的 99% 的問題都能在網上找到解決辦法,剩下的 1% 是因為你還沒學會用關鍵字來搜尋。

多思考

學會思考,養成多思考的習慣。在寫程式碼的過程中多想想人家為什麼這樣寫。舉個例子,為什麼 java 類只能單繼承,而介面卻可以多繼承,稍加思考你就會知道答案:如果存在多繼承,那個兩個父類有兩個一模一樣的方法怎麼辦,子類就不知道繼承哪一個方法。而介面能多繼承的原因是:介面中的方法都是方法名,沒有函式體,具體的實現需要靠實現類去實現,一旦實現類實現了方法,那麼就不存在多個介面有相同的方法名的出現的問題了,因為函式體都是一樣的。

熟能生巧

很多人困惑,為什麼我看視訊的時候很懂,過兩天就啥都忘了?其實這是正常的,因為你還沒有對知識進行實踐歸納。在入門 Java 之後,就需要大量的實戰來鞏固你的基礎。所以說忘了不要緊,先按大綱按部就班學,之後再通過實戰來鞏固基礎。

專案驅動,不要為了學而學

相當一部分初學者都堅持不下去,因為太枯燥了。遇到這種情況,首先你要明確你學習 Java 的目的是什麼?我相信很多人最終目的都是--錢。這太正常了,沒錢誰願意做這麼費腦力的事啊。但是你是需要通過專案來賺錢的。所以我們學習是要通過專案來驅動的。你要想你學完之後希望鼓搗一個什麼東西出來。比如我之前學 Android ,我就是打算弄一個天氣預報的APP出來,那有了目標之後,你就開始思考,網上查,這個東西,需要用到什麼技術。比如,我當時就是要先會 Javase 才能學安卓,學到了安卓之後又有其他的技術,比如 Android 網路框架,UI框架等等。以專案來驅動自己學習,整個過程將會有趣得多。

後語

以上就是我對自學Java的幾點建議,希望對你們有幫助。最後,對 Python 、Java 感興趣請長按二維碼關注一波,我會努力帶給你們價值,如果覺得本文對你哪怕有一丁點幫助,請幫忙點個贊。

另外,關注之後在後臺回覆 黑馬 可免費領取上面學習大綱定製的 Java 學習資料與學習大綱原圖。

3282134-d2fd83d302ccd308.jpg
一個優秀的廢人

相關文章