第一周學習了Java數據類型、運算符、分支、循環結構,方法。都是比較基礎的部分,內容有些多,還好我之前有看過書能跟上進度。循環結構這部分的知識比較考驗邏輯性,特別是多重嵌套循環,比如打印九九乘法口訣表,正三角形等,之前寫日歷查詢時寫了70多行代碼,也就是用了嵌套for循環以及if分支,當時覺得代碼寫太多了。學習了方法之后,發現寫起代碼來變得靈活了,這里調用一個方法,那里調用一個方法,非常方便。
第一周學習的位運算和位移運算都比較重要,面試題里就有一個如何快速計算2^3,可能大家第一反應是2*2*2=8,其實最快的方法就是直接用位移運算符,2<<2,因為位移的運算效率比前面要高的多。
第二、三周學習了數組、面向對象、內部類、System、Math、String等。面向對象是一種思想,萬事萬物皆對象,這是Java學習的一個核心哲學思想,聽說我們老師花了五年時間才領悟,所以我想我還有很長時間需要去摸索。對象的三大特性封裝、繼承、多態以及內部類的知識以后會經常用到,在學習匿名內部類的時候,會學到有關lambda的知識,用五個字來總結就是行為參數化,因為它的簡便性,用過lambda的人都說好。
在學習這一部分的時候要學會使用面向對象的思想去思考問題,當要寫一個程序時,可以先試著在草稿紙上面寫個大概的流程,要學會使用這種打草稿畫流程圖的方法,正所謂工欲利其事,必先利其器。
第四周學習了集合、異常、IO。集合里面涉及的知識點比較多,但是整理過后會發現集合之間都會有著一些聯系和區別,其中ArrayList、linkedList、HashMap這幾個是需要重點掌握的,可以把這些集合之間的區別以及共性做一個整理,這樣會對理解集合有幫助。異常時我們會經常遇到學會拋異常和抓異常,使用finally通知GC來回收那些不再使用可以回收的垃圾。IO是很重要的知識點,可我學得不是很好,主要是被那一大段的單詞給擊敗了,不過IO的本質也還是把內容寫入對應的磁盤,然后從磁盤里面的內容讀取,這個過程中的流大都是裝飾基礎流的,并沒有想象中那么復雜。
第五周學習了多線程、線程池、并發、Socket,NIO。說實話,這個星期的知識都很難,并不好掌握,如果是能力強學的好的話,可以做一些類似客戶端與服務器之間的文件傳輸練習,先做單線程然后再實現多線程。如果覺得這一部分學的不太好,就重點學好基礎部分,掌握了基礎,那些難一點的知識才能更好的掌握。
想到文章篇幅,就不每一周逐一分享了。想學Java也細分多個專業,在北大青鳥深圳嘉華學校有Java全棧工程師、互聯網架構師等,專業不一樣,深度和學習時間也不一樣。想了解更多的話,可以直接在線咨詢喲~