日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

201621123079《java程序设计》第六周作业总结

發布時間:2025/3/21 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 201621123079《java程序设计》第六周作业总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作業06-接口、內部類

1. 本周學習總結

1.1 面向對象學習暫告一段落,請使用思維導圖,以封裝、繼承、多態為核心概念畫一張思維導圖或相關筆記,對面向對象思想進行一個總結。

2. 書面作業

1. clone方法

1.1 在test1包中編寫Employee類,在test2包中新建一個Test類,并在其main中新建test1包中的Employee的對象,然后使用clone方法克隆一個新對象,能否成功?為什么?

不能成功;clone被修飾為protected,所以只限類本身和子類訪問,不能跨包訪問。

1.2 如果要為自定義的類覆蓋clone方法,需注意什么?

  • 實現Cloneable接口;
  • 將clone聲明為public;
  • 調用父類的方法進行克隆操作,(super.clone);

1.3 Object對象中的toString, equals, hashCode方法都使用public修飾,而clone方法卻被protected修飾,請嘗試解釋原因。為什么不聲明為public呢?

利用protected修飾clone方法,是為了安全考慮。Object類中的clone方法是淺拷貝,如果是對象,它拷貝的只是這個對象的一個引用,而這個引用仍然指向那個對象,當我們改變這個引用的屬性時,原來對象也會跟著改變,這不是我們希望看到的,但是Object類肯定做不到深拷貝,因為它不知道你的類里有哪些引用類型,所以把修飾符定義為protected,這樣想要在其他任何地方調用這個類的clone方法,這個類就必須去重寫clone方法并且把修飾符改為public,并且把修飾符修改為public,這樣在任何地方都可以調用這個類的clone方了。

詳細解釋

2. 內部類

2.1 使用匿名類與Lambda表達式改寫題集面向對象2-進階-多態接口內部類的題目7-2。請貼圖關鍵代碼與運行結果,請在運行結果中出現你的學號與姓名。

2.2. 分析下列代碼,回答shapeComparator所指向的對象與Comparator接口有什么關系?Comparator<Shape> shapeComparator = new Comparator<Shape>() { @Override public int compare(Shape o1, Shape o2) { //你的代碼 } };

實現Comparator接口,重寫了compare方法。

2.3 題集:6-1(匿名內部類)實驗總結。你覺得使用匿名內部類有什么好處?

簡化代碼,對只使用一次的類不用額外再創建。

3. PTA實驗總結

3.1 PTA(自定義接口)。并回答:相比較不寫接口,直接寫一個類包含IntegerStack相應的方法來說,定義IntegerStack接口,然后定義其實現類這種方式有什么好處?

定義IntegerStack接口可直接對它進行操作,簡單方便。

3.2 PTA(靜態內部類)。并回答:你覺得什么時候應該使用靜態內部類?靜態內部類與內部類有什么區別?

  • 當內部類對象與其外圍類對象之間有聯系時可使用靜態內部類;
  • 靜態內部類不需要有指向外部類的引用;而內部類需要持有對外部類的引用。

3.3 PTA(繼承覆蓋綜合練習-Person、Student、Employee、Company)。并回答:使用Collections.sort對引用類型數組進行排序需要有一個什么前提條件?

實現Comparable接口。

4.大作業-繼續完善(嘗試使用接口改造你們的系統)

4.1 現在希望將系統中購物車的操作抽象到相應的DAO接口。

接口類:

4.2 為該接口定義至少兩個實現(如數組、列表、文件)。截圖自己負責部分的關鍵代碼,要求出現名字與學號

購物車類:



User類(調用購物車):

UserList類:

4.3 給出你們的Main程序,說明定義DAO接口的好處。



實現Dao接口后可以調用多種類實現功能,而修改時不用修改類。

5. 代碼閱讀:PersonTest.java(abstract、多態、super)

5.1 畫出類的繼承關系

5.2 main函數的代碼實現什么功能?

將四個人的年齡進行升序輸出。

5.3 如果將子類中的super構造函數去掉行不行?

不行;去掉super構造函數后子類就無法調用父類中的方法了。

5.4 PersonTest.java中哪里體現了多態?

  • Student,Employee等類繼承了Person類;
  • 這些類又重寫了toString()方法,使得類本身有自身的屬性和方法,體現了多態性。

    3.碼云及PTA

    3.1. 碼云代碼提交記錄


    3.2 截圖PTA題集完成情況圖




    3.3 統計本周完成的代碼量

周次總代碼量新增代碼量總文件數新增文件數
10000
20000
30000
40000
532232255
6729407127
71074245208

轉載于:https://www.cnblogs.com/lsyuan/p/7747361.html

總結

以上是生活随笔為你收集整理的201621123079《java程序设计》第六周作业总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。