1. 本周學習總結
1.1 寫出你認為本周學習中比較重要的知識點關鍵詞
類和對象 父類 子類 方法 object final
1.2 嘗試使用思維導圖將這些關鍵詞組織起來。注:思維導圖一般不需要出現過多的字。

2. 書面作業
1. 面向對象設計(大作業1-該作業將作為以后其他作業的基礎,請務必完成)
1.1 講故事:用50字以上講一個你在網上商城購物或者在班級博客進行學習的故事。使用Markdown的加粗標記把關鍵名詞標注出來,使用語句塊標記把里面關鍵的動詞標注出來。講故事范例:
因為桌子上的架子會擋住宿舍的燈光所以要去買一個點開淘寶搜索商品台燈,在搜索項選擇一個商家選取台燈樣式** 數量 並將其加入購物車 去購物車填寫資料然后付款,就可以等待台燈的到來。

1.2 找出系統中包含的類及其屬性、方法,類與類之間的關系,並繪制相應類圖。

1.3 使用Java代碼實現這個系統(不必很完善)。粘貼運行截圖與關鍵代碼。將來要在這個基礎上逐漸完善、擴展成一個完整的面向對象的系統。
String Name //商品名稱
double Price //價格
public Add(String goods,int num) //添加商品
public shoppingcart(String name,int num) //添加購物車
public Delete(String goods,int num) //刪除商品
public Sum(string goods,double Price)//計算價格
2. ManagerTest.zip代碼分析(繼承、多態)
2.1 簡述文件中表現出的繼承關系。哪些是共有方法,哪些是子類特有的屬性和方法?
子類Manager 繼承 父類Employee
共有方法為getName(),getHireDay(),getSalary(),getHireDay()
子類特有方法是setBonus()特有屬性是bonus
2.2 文件第26行e.getSalary(),到底是調用Manager類的還是Employee類的getSalary方法?

staff[0]調用Manager類 staff[1]staff[2]調用Employee類
2.3 Manager類的構造函數使用super調用父類的構造函數實現了代碼復用,這樣有什么好處?為什么不把父類構造函數中的相關代碼復制粘貼到Manager的構造函數中,這樣看起來不是更直觀嗎?
父類中有帶參數的構造函數,應當使用super函數。
不采用復制的方法應該會使得代碼冗長
3. Object類中的toString與equals
3.1 編寫Fruit類,屬性String name。如果覆蓋其toString()方法,其父類中的toString方法的代碼就沒有了嗎?編寫Fruit的toString()方法,在該方法中要將調用父類的toString方法得到的字符串與自己特有的屬性name拼接起來,怎么編寫?(使用代碼展示)
使用toString方法 父類還在

3.2 為Fruit類編寫equals方法覆蓋父類相應方法,功能為當兩個Fruit對象name相同時(忽略大小寫),返回true。(使用代碼證明你自己覆蓋的equals方法是正確的)


3.3 完成3.2后,使用ArrayList
fruitList存儲多個fruit,添加時要求如果要添加的fruit對象在fruitList中已存在就不添加,不存在就添加。編寫相關測試代碼。並分析ArrayList的contains代碼與equals方法有何關系?

contains是用到了equals,contains應該包含了equals方法
4. 實驗總結:
4.1 PTA編程題(形狀-繼承)。並回答:在本題中使用多態為編程帶來了什么好處。
繼承了父類Shape 同時子類有着自己的私有屬性。當需要修改代碼的時候只需要修改父類當中的引用變量 提高了代碼的利用率
4.2 PTA編程題(覆蓋)。並回答:編寫eqauls方法是需要注意些什么?
許多代碼可以自動生成可以提高效率,eqauls要注意的是表示的是對象內容
4.3 程序填空、函數題(1-3)。
使用this調用已有的有參構造函數,width與length分別為5和6。要注意題目要求構建有參函數。
6.1 super調用toString6.2數組最后是倒序輸出6.3采用自動生成equals更快些
2.為Rectangle類覆蓋toString。按照width=實際寬度值,length=實際長度值的格式輸出
3. 碼雲及PTA
3.1. 碼雲代碼提交記錄

3.2 截圖PTA題集完成情況圖

3.3 統計本周完成的代碼量

| 周次 | 總代碼量 | 新增代碼量 | 總文件數 | 新增文件數 |
|---|---|---|---|---|
| 4 | 0 | 0 | 0 | 0 |
| 5 | 401 | 401 | 9 | 9 |
