20172316《程序設計與數據結構》第四周學習總結

20172316 《程序設計與數據結構》第三週學習總結

教材學習內容總結

第四章和第七章綜合總結

  • 類是個啥?我以前一直覺得是系統預先規定好的,死的東西,學過這章以後才發現的文件和以前所作的全部JAVA文件同樣,無論是語句,語法。
  • 第四章和第七章之間聯繫甚密,這大概也是老師如此安排的緣由,編寫類文件時,咱們須要「1.肯定軟件需求;2.軟件設計;3.實現軟件設計;4.軟件測試」(摘自第七章)。而第四章的UML類圖對類和對象間的關係進行可視化描述,這頗有利於程序員理清編程的思路,肯定軟件的需求。
  • 親自設計一個含構造方法的幫助我理解以前用過的每一個預約義類的原理
  • 第七章對如何設計程序,程序之間的關係以及接口進行了介紹,看起來都是新東西,其實早就包含在了咱們以前所作過的一些習題中。

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

在最初沒有理解和熟悉編寫類時,能夠說是一臉懵逼,「這些setXXXX(),和getXXXX()究竟是幹什麼的,return是返回,那返回和輸出的區別是什麼,private以前也從未見過。如何去解決呢?看例題、敲例題,當本身作完以後,研究輸出結果,對照程序自己,就能理解其含義了。
這些程序比以前的要長得多,但例題好歹也是通常的JAVA語言,都能看懂。html


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

  • 問題1:PP4.7,找不到對象,如圖,java

  • 問題1解決方案:輸入String類參數時,應加雙引號""git

  • 問題2:例題4.1運行不了(找不到或沒法加載主類 Die),如圖,程序員

  • 問題2解決方案:代碼是由IDEA上編成,複製到虛擬機上,最上有package week4打包,在其前加上//變爲註釋無效化便可。
  • 問題3:PP7.3編譯錯誤*1,如圖,編程

  • 問題3解決方案:按照提示,輸入javac -Xlint:unchecked XXX進行檢查,發現建立名爲Student的ArrayList時,沒有肯定保存對象的數據類型致使錯誤,加入後建立:ArrayList<student> Student = new ArrayList<student>(),問題解決。
  • 問題4:PP7.3運行錯誤*1,如圖,數據結構

  • 問題4解決方案:檢查命令行提供的信息找到錯誤出處,發現關鍵函數

    public float average() {學習

    int i = 0;
       Sum = 0;
       while (i <= ScoreList.size()){
           Sum += ScoreList.get(i);
           i += 1;
       }
       sum = Sum;
       AverageScore = sum / StudengtList.size();
    
       return AverageScore;

循環語句中i <= ScoreList.size()出了問題(i不能等於size,而是size-1),致使Sum += ......沒法正常進行。改成i < ScoreList.size()後問題解決。測試


代碼託管

(statistics.sh腳本的運行結果截圖)ui


上週考試錯題總結

  • 錯題1: The behavior of an object is defined by the object's
    正確答案:method
    錯誤緣由:想固然認爲全部因素都影響着對象的行爲,然而全部行爲確實歸根結底都是方法決定的;

  • 錯題2:All Java classes must contain a main method which is the first method executed when the Java class is called upon.
    正確答案:false
    緣由:只有驅動類才須要main方法,只有驅動類才須要main方法,只有驅動類才須要main方法。

  • 錯題3:Every class definition must include a constructor.
    正確答案:false
    緣由:能夠沒有構造函數。

  • 錯題4:During program development, software requirements specify
    正確答案:what the task is that the program must perform
    緣由:純粹的英語很差,沒讀懂題意,這道題根本就是一道英語題。

  • 錯題5:The goal of testing is to
    正確答案:find logical and run-time errors
    緣由: 測試的目的是找到邏輯錯誤和運行錯誤,而語法錯誤是不須要從這裏找的,由於javac的時候就發現了。

  • 錯題6:Interface classes cannot be extended but classes that implement interfaces can be extended.
    正確答案:false
    緣由:徹底能夠擴展。。。。

  • 錯題7:All objects implement Comparable.
    正確答案:false
    緣由:只有實現了接口(定義compareTo方法),才能comparable。


學習進度條

代碼行數(新增/累積) 博客量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第一週 195/195 1/4 20/20 對代碼產生了很大興趣
第二週 309/504 1/5 20/40 打字速度明顯提高
第三週 311/815 2/7 25/65
第四周 474/1289 1/8 30/95 抗...抗壓能力增強?

參考資料

相關文章
相關標籤/搜索