初學面向對象,會學習到不少碎片化的概念與知識。嘗試學會使用思惟導圖將這些碎片化的概念、知識點組織起來。請使用工具畫出本週學習到的知識點及知識點之間的聯繫。步驟以下:
1.1 寫出你認爲本週學習中比較重要的知識點關鍵詞,如類、對象、封裝等
1.2 用思惟導圖或者Onenote或其餘工具將這些關鍵詞組織起來。
關鍵詞:類與對象、數組、字符串、打包。java
注意:屬性必須修飾爲private
1.1 截圖你主要代碼(須要在程序中出現你的學號和姓名)並粘貼程序的git地址。
1.2 對比你的代碼與歷程的代碼,說明面向對象編程與面向過程編程有何區別?git
2.1 結合PTA 5(構造函數與toString)說明構造函數有什麼用?其函數格式有何特徵?
構造函數方便調用,也能夠在其餘類中使用,將函數主體放在main類外,能夠提升整個程序的可讀性。編程
2.2 若是一個類不寫構造函數,它有構造函數嗎?若是一個類中只有帶參的構造函數,它有沒有不帶參數的默認構造函數?
若是沒寫構造函數,默認會給一個無參構造函數。若是隻有帶參的構造函數,不會默認建立無參構造函數。數組
2.3 查看String
類的源代碼,找出3個看得懂的String類的構造函數,並使用本身的話描述這3個構造函數的區別。數據結構
public int compareTo(String anotherString)
public String(String value)
public String substring(int beginlndex,int endlndex)
compareTo 是將兩個字符串從第一個字符開始比較並返回不等時兩個字符的ascill差值;
第二個函數是用一個已知的字符串value來穿件一個String;
substring是輸入兩個int型字符來截取一個字符串。函數
2.4 結合PTA(構造函數與初始化塊)說明初始化塊與構造函數的異同。並說明,初始化塊與構造函數誰先執行?初始化塊與靜態初始化塊有何不一樣,誰先執行?工具
初始化塊在構建對象的時候才執行,用於給全部對象進行統一的初始化,每新建一個對象就會執行一次;構造函數在對象創建完成後立刻執行,用於初始化隊形,並只在創建對象時執行一次。初始化塊比構造函數優先執行。
靜態初始化塊只在第一次加載類時才執行,用做對static變量做初始化。靜態初始化塊比初始化塊優先執行。學習
淺陌初心0702的博客
http://blog.sina.com.cn/u/55496638443d
3.1 使用java.lang.Math
類的方法時,爲何不須要new出一個Math對象,而後調用該對象上相應的方法?
Math類在JDK中是直接引用的,並不須要經過new來建立對象。
3.2 若是new Math()會產生什麼錯誤?嘗試閱讀Math類源代碼,分析緣由。
code
如圖,提示構造函數不可見。
在Math源碼中,方法都是靜態的,不參與對象實例的過程,因此是不能建立對象的。
3.3 進一步:你以爲什麼樣的對象須要new出來才能用,調用什麼方法時沒必要建立相應對象就能夠使用?(重點檢查)
我以爲通常是可以接受參數的構造函數的對象須要使用new,用static修飾的靜態方法不須要建立對象。
4.1 什麼是重載?什麼是構造函數重載?怎麼才能區分兩個重載的方法?
4.2 在java.lang.Math
類中舉出1個方法重載的例子?
重載就是在一個類中,多個方法使用同一個名稱可是參數不一樣。構造函數重載也是函數與類名都同樣,參數的類型不一樣。區別重載的方法能夠經過參數的不一樣來區別。
final修飾的變量不能改變,爲何以下代碼卻可正常運行?
final int[] NUMBS= {1,2,3,4,5}; NUMBS[2] = 1;
final修飾的引用變量不會變,可是引用變量指向的對象仍是能夠改變的。
public static boolean isMondayToFriday()
功能:判斷今天若是是週一到週五,返回true,返回false。main函數中調用該函數,若是爲true則輸出「工做日+姓名學號」,不然輸出"休息+姓名學號"。
截圖:關鍵代碼。
提示:使用LocalDateTime, DayOfWeek類
7.1 結合PTA(形狀),請用本身的話簡單總結一下面向對象中封裝是什麼意思?有何好處?**
7.2 和封裝有關的關鍵字有哪些?
封裝就是將對象的屬性隱藏起來,在被調用時不須要知道隱藏的屬性就能夠直接使用,使調用更方便。
和封裝有關的關鍵字public
private
找一個水平相近的同窗完成1-2題實驗題。開始編程錢,可先對內容進行討論。寫出體驗報告,包括如下內容:1.對方姓名。2.所完成的題目。3.感想。4.照片(上次不少同窗並未貼粘片,請貼上)
1.對方姓名:林志偉
2.完成題目:7-1 jmu-Java-03面向對象基礎-01-構造函數與toString
3.感想:此次結對編程我和林志偉同窗配合的很好,互相完成本身先負責的一部分,第一題進度很快。
4.照片:
須要有兩張圖(1.排名圖。2.PTA提交列表圖)
須要將每週的代碼統計狀況融合到一張表中,可以使用最新版的代碼統計工具的-history
參數,詳細用法見項目wiki地址。表格以下所示:
周次 | 總代碼量 | 新增代碼量 |
---|---|---|
1 | 98 | 98 |
2 | 338 | 240 |
3 | 535 | 197 |