201621123024《JAVA程序设计》第四周学习总结
生活随笔
收集整理的這篇文章主要介紹了
201621123024《JAVA程序设计》第四周学习总结
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 本周學習總結
1.1 寫出你認為本周學習中比較重要的知識點關鍵詞
繼承、多態、抽象方法、重載、對象等。1.2 嘗試使用思維導圖將這些關鍵詞組織起來。注:思維導圖一般不需要出現過多的字。
1.3 可選:使用常規方法總結其他上課內容。
2. 書面作業
1. 面向對象設計
1.1 講故事:用50字以上講一個你在網上商城購物或者在班級博客進行學習的故事。使用Markdown的加粗標記把關鍵名詞標注出來,使用語句塊標記把里面關鍵的動詞標注出來。講故事范例:見參考資料UML類圖中如何繪制類圖
打開京東商城,然后登錄賬號,選擇我需要購買的商品,然后選中我需要購買的商品,如果覺得自己的商品不滿意就接著換其他商品,然后在最終決定好自己所需要的商品的時候,直接點擊購買就可以了。1.2 找出系統中包含的類及其屬性、方法,類與類之間的關系,并繪制相應類圖。注意:不一定非要體現繼承關系。只要能將系統描述完整即可。一開始設計的時候不要考慮太多,不要出現太多的類,僅出現必要的類,完成最小功能即可。對商城購物系統建議只做購物車模塊。
`選擇商品->``確認商品->``購買商品`;1.3 使用Java代碼實現這個系統(不必很完善)。粘貼運行截圖與關鍵代碼。將來要在這個基礎上逐漸完善、擴展成一個完整的面向對象的系統。合作完成:2-3人一個小組。
2. ManagerTest.zip代碼分析(繼承、多態)
分析ManagerTest.zip中的代碼,回答幾個問題:2.1 簡述文件中表現出的繼承關系。哪些是共有方法,哪些是子類特有的屬性和方法?
`Manager`繼承父類`Employee`; `getName()`;`getSalary()`;`getHireDay()`;`raiseSalary()`屬于共有方法; 子類特有屬性:`private double bonus;` 方法:`setBonus`2.2 文件第26行e.getSalary(),到底是調用Manager類的還是Employee類的getSalary方法?
調用的是`Employee`類的,for循環是Employee類的,調用之后也是用`new Employee`完成的。因此用的是Employee類的。2.3 Manager類的構造函數使用super調用父類的構造函數實現了代碼復用,這樣有什么好處?為什么不把父類構造函數中的相關代碼復制粘貼到Manager的構造函數中,這樣看起來不是更直觀嗎?
這樣子可以看起來更加直觀,更加簡便,然后之后調用時速率會加快。3. Object類中的toString與equals
3.1 編寫Fruit類,屬性String name。如果覆蓋其toString()方法,其父類中的toString方法的代碼就沒有了嗎?編寫Fruit的toString()方法,在該方法中要將調用父類的toString方法得到的字符串與自己特有的屬性name拼接起來,怎么編寫?(使用代碼展示)
不是,只是沒有調用而是儲存在字符串中而已; 編寫代碼如下: `public String toString(){ return super.toString()+"-"+name;}`3.2 為Fruit類編寫equals方法覆蓋父類相應方法,功能為當兩個Fruit對象name相同時(忽略大小寫),返回true。(使用代碼證明你自己覆蓋的equals方法是正確的)
3.3 完成3.2后,使用ArrayList<Fruit> fruitList存儲多個fruit,添加時要求如果要添加的fruit對象在fruitList中已存在就不添加,不存在就添加。編寫相關測試代碼。并分析ArrayList的contains代碼與equals方法有何關系?
4. 實驗總結:
4.1 PTA編程題(形狀-繼承)。并回答:在本題中使用多態為編程帶來了什么好處。
直接使用父類,而不是去增加代碼量,繼承了父類的編碼Shape,提高靈活性,減少代碼的冗余量。4.2 PTA編程題(覆蓋)。并回答:編寫eqauls方法是需要注意些什么?
對參數的類型,還有equals的使用,還有要判斷引用是否為同一個對象等。4.3 程序填空、函數題(1-3)。
函數1:ToString
函數2:數組[]
函數3:equals函數;
轉載于:https://www.cnblogs.com/gxy1025/p/7668540.html
總結
以上是生活随笔為你收集整理的201621123024《JAVA程序设计》第四周学习总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ElasticStack系列之十六 E
- 下一篇: echarts饼图扇区添加点击事件