20162311 2016-2017-2 《程序設計與數據結構》第五周學習總結
教材學習內容總結
1、類和對象
2、面向對象程序設計的思維方式
3、實例數據與UML類圖
4、用private
可見性修飾符聲明變量,以提倡封裝
5、類中方法的具體應用
6、靜態變量與靜態方法
7、類之間的關系:依賴,聚合和繼承
8、this
,static
關鍵字的使用
9、如何在自定義的類中設計方法
10、方法重載,程序的測試與調試
教材學習中的問題和解決過程
- 問題1:教材的代碼中出現了之前沒見過的運算符“?”和“:”
- 問題1解決方案:我先查看了書上的附錄D,書上注明了這是條件運算符。那么我想這個運算符應當是用來判定某些條件的。於是我猜測書上代碼的意思
意思應當是,判斷face和HEADS是否相等,若為真,則把Heads賦給face,否則把Tails賦給face。
然后我查了一下百度,結果和我想的一樣
- 問題2:什么是
void返回值
類型? - 問題2解決方案:在看教材
5.4.4 再次討論構造方法
時,書上說不能給構造方法增加一個void返回值
類型,我不理解什么是void返回值
,雖然之前寫程序第一行主函數都是public static void main
。於是我先上網查找相關資料。
前面說了,構造函數不能有返回值,可既然void返回空值,為什么不行呢?
原來是規定好的,為了區別構造函數與其他方法。
代碼調試中的問題和解決過程
-
問題1:編寫PP5.3時
我的源代碼如下
-
問題1解決方案:我改了一下代碼
把給face賦值放在了方法里面,就ok了
代碼托管
(statistics.sh腳本的運行結果截圖)
上周考試錯題總結
- 錯題1:第7題,用int[]聲明的數組,元素類型可以是所有基本類型(×)。一個數組被聲明為整型數組后,里面的元素只能是整型數。
- 錯題2:第13題,for(int i = 0; i<names.length(); i++)不能遍歷數組中的每一個元素。length變量不是一種方法,后面不能有括號。
- 錯題3:第15題,
int[] array = new int[25];
,array[25] = 2;
代碼會產生運行時錯誤。該數組最后一個下標為24,運行時會拋出ArrayIndexOutOfBoundsException異常。
結對及互評
點評模板:
- 博客中值得學習的或問題:
- 問題解決方法過於簡單
- 代碼中值得學習的或問題:
- 所有代碼都在src目錄里,不好找。最好每一章創建一個目錄,把每章的代碼放在各自的目錄里
- 基於評分標准,我給本博客打分:7分。得分情況如下:
- 正確使用Markdown語法(1分)
- 模板中的要素齊全(1分)
- 教材學習中的問題和解決過程(1分)
- 代碼調試中的問題和解決過程(1分)
- 本周有效代碼超過300分行(2分)
- 結對學習情況真實可信(1分)
點評過的同學博客和代碼
思考
這周考試有些特別,題目既有英文也有中文,而解析全是英文,為了能看懂錯題的解析,我不得不去查那些不認識的英文單詞,這在無形之中也是一種積累。而且Java這門語言也涉及到很多英文,特別是一些計算機方面的術語,如果不能掌握這些術語,今后的學習會有一定困難,所以,這樣的出題方式對我們來說是有幫助的。
學習進度條
代碼行數(新增/累積 | 博客量(新增/累積 | 學習時間(新增/累積 | 重要成長 | |
---|---|---|---|---|
目標 | 5000行 | 30篇 | 400小時 | |
第一周 | 113/113 | 1/1 | 10/10 | |
第二周 | 294/407 | 1/2 | 15/25 | |
第三周 | 433/840 | 1/3 | 15/40 | |
第四周 | 1169/2009 | 2/5 | 30/70 | |
第五周 | 825/2834 | 1/6 | 15/85 |
-
計划學習時間:15小時
-
實際學習時間:15小時
-
改進情況:這周只學一章內容,花的時間可能稍微多了點,從下周開始,要試着按照老師的方法,兩小時看教學視頻,兩小時學習教材,用六小時做書上的程序設計題目。當然剛開始不可能那么嚴格按照計划來,總會有一些問題要花更多的時間,所以只能是盡量往老師的方法靠近,這樣也能提高效率。