20172322 2017-2018-2 《程序設計與數據結構》第四周學習總結

20172322 2017-2018-2 《程序設計與數據結構》第四周學習總結

教材學習內容總結

  • 學會了簡單的自編類來實現簡單的自編類要求。
  • 瞭解了類中的屬性成爲實例變量。
  • 瞭解了UML圖的使用方法。
  • 瞭解到封裝由private可見性修飾符來實現。
  • 瞭解到return用於返回調用方法中的調用語句。
  • 瞭解了實參與形參的差異。
  • 瞭解了 軟件開發活動主要包含下四個基本的開發過程:肯定軟件需求、軟件設計、實現軟件設計、軟件測試。
  • 瞭解了靜態方法能夠經過類名稱來調用,沒必要實例化對象。例如Math類。
  • 瞭解了類間關係有三種:依賴、聚合、繼承。
  • 學會了一些簡單接口的使用。例如Comparable。

教材學習中的問題和解決過程

  • 問題1:在最初老師上課時並無預習書上內容,致使書上概念不少不清晰。
  • 問題1解決方案:在以後的時間裏花了大量時間來細讀書上類容,才使得對部份內容逐漸清晰。
  • 問題2:在最開始按照按照書上的代碼敲入,沒有理解其中的含義,例如爲什麼要使用return來返回值,void的用法又是什麼這些都不是很瞭解。
  • 問題2解決方案:認真閱讀教材,而且結合本身以前敲入的代碼來理解書上的內容,在一次細讀後豁然貫通。知道了沒void存在的聲明都是非靜態的,均須要使用return來返回,不然會致使錯誤的發生。

代碼調試中的問題和解決過程

  • 問題1:在IDEA中敲入的代碼若是上傳至碼雲後再在Linux中git pull會致使程序在Linux中沒法運行。
  • 問題1解決方案:在IDEA編輯時,IDEA會將程序自動打包到文件夾下,在Linux中他們由於存在pakege而沒法運行,把pakage那一行變爲註釋即可。如圖!輸入圖片說明輸入圖片說明
  • 問題2:對IF方法的不瞭解致使部分課後做業沒法完成。
  • 問題2解決方案:獲得了助教張旭升學長的幫助,使得我對IF的使用有了必定的瞭解。如圖。
    輸入圖片說明

代碼託管

輸入圖片說明

上週考試錯題總結

  • 第一題:輸入圖片說明
  • 第一題解決方案:Java變量包含對實例類(包含值和/或附加引用)的值或引用。
  • 第二題:輸入圖片說明
  • 第二題解決方案:若是兩個變量都設置爲null,那麼該對象不會被任何變量引用(經過任何別名)
  • 第四題:輸入圖片說明
  • 第四題解決方案:編譯器可以檢測到嘗試使用未初始化的變量,在這種狀況下它會產生語法錯誤。若是諸如使用編譯器的轉義檢測,則在使用時發生運行時錯誤。
  • 第七題:輸入圖片說明
  • 第七題解決方案:翻譯之後沒有看懂題意,致使理解錯誤,這道題沒有問題。
  • 第九題:輸入圖片說明
  • 第九題解決方案:在Random類中nextFloat()在[0,1)範圍內的數是很是多的浮點數,而nextInt()在[0,1)範圍內只存在0一個整數。
  • 第十一題:輸入圖片說明
  • 第十一題解決方案:s1沒有空格!!!
  • 第十五題:輸入圖片說明
  • 第十五題解決方案:全部隨機數發生器的效率是相同的。Random生成器比Math.random的優勢是包括全部其餘屬性。
  • 第二十三題:輸入圖片說明
  • 第二十三題解決方案:他們的含義雖然不一樣可是他們輸出的結果是同樣的 😵
  • 第二十七題:輸入圖片說明
  • 第二十七題解決方案:導入語句只能與一個*(通配符)一塊兒使用。若是您還須要導入包的全部輔助級別,則必須明確寫出它們:
    import package.A;
  • 第二十九題:輸入圖片說明
  • 第二十九題解決方案:C程序使用C printf函數進行輸出。Java的printf方法緊跟在C printf函數以後,因此C輸出語句能夠很是容易地轉換成Java。
  • 第三十題:輸入圖片說明
  • 第三十題解決方案:題目所說的對於大多數包裝類都是對的,但int(Integer)和char(Character)是錯誤的。

其餘(感悟、思考等,可選)

  • 感悟:第一次一週學兩章的內容,外加這兩張的內容都不簡單,自編類的難度比前幾章來講難度陡升,致使在本週的學期初期有點爆炸,可是通過以後的認真學習發現了初期的問題都不是問題,認真學習就能解決問題。另外:少玩遊戲!
  • 思考:自編類對於新手來講有一些難度,咱們如今編的代碼只是爲了完成任務,並未考慮到代碼優化之類的事情,然而並非程序可以運行就萬事大吉了,咱們還有很長的路要走。

學習進度條

代碼行數(新增/累積) 博客量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第一週 242/242 1/4 13/13 增長了對Java的興趣
第二週 297/539 1/5 15/28 發現目標並無想象中那麼難
第三週 315/854 2/7 18/46 忽然發覺JAVA的難度不小
第四周 1269/2123 1/8 50/96 Java難到哭,可是有信心擊敗他!
  • 計劃學習時間:40小時html

  • 實際學習時間:50小時java

  • 改進狀況:上週博客提到的問題已經理解得差很少啦!git

參考資料

相關文章
相關標籤/搜索