標籤:年月日 使用 返回 nbsp public 令行 修改 物件導向 重載函數
1. 本周學習總結
2. 書面作業
代碼閱讀
public class Test1 {
private int i = 1;//這行不能修改
private static int j = 2;
public static void main(String[] args) {
geti();
Test1.getj();
}
public static void geti() {
System.out.println(i);
}
public static void getj() {
System.out.println(j);
}
}
以上代碼可否編譯通過?哪裡會出錯?為什嗎?嘗試改正?
如果建立3個Test1對象,有記憶體中有幾個i,幾個j?請分析原因? 答:不能編譯通過,System.out.println(i)這行會出錯,因為i定義的不是static型的,改正:將public static void geti()改為 public void geti(i);如果建立3個Test1對象,會有3個i,一個j。
建構函式有什麼用?其編寫格式是什嗎?如果一個類不寫建構函式,它有建構函式嗎?如果一個類中只有帶參的建構函式,它有沒有不帶參數的預設建構函式?答:建構函式是對類進行初始化操作;編寫格式:建構函式名稱與類名相同;如果一個類不寫建構函式,系統會預設一個無參建構函式;如果一個類中只有帶參的建構函式,它應該就沒有不帶參數的預設建構函式。
使用java.lang.Math類的函數時,為什麼不需要new?如果new Math()會產生什麼錯誤?分析原因?答:會產生編譯錯誤。
什麼是重載?什麼是建構函式重載?在java.lang.Math類中舉出1個函數重載的例子?怎麼才能區分兩個重載函數?答:函數或方法有相同的名稱,但參數列表不同的情形,這種同名不同參數的函數或方法之間,互相稱之為重載函數或方法。區分兩個重載函數依靠它們的參數列表。
final修飾的變數不能改變,為什麼如下代碼可以正常運行?
final int[] NUMBS= {1,2,3,4,5};
NUMBS[2] = 1;答:final修飾的變數不能改變是指變數的值不能修改,變數指向的對象的值可以修改。
閱讀代碼EmployeeTest.java,回答:
為什麼其屬性均為private?這樣設計有什麼好處?
為Employee類增加一個無參建構函式,調用其有參建構函式,設定name為僱員1, salary為3000, hireDay的年月日為2017年3月5日。(粘貼代碼)
為Employee類再增加一個有參建構函式,參數只有name與salary,hideDay為當前日期。(粘貼代碼)
編寫函數public static boolean isMondayToFriday()
功能:判斷今天如果是周一到周五,直接輸出如“上班時間”並返回true,否則輸出“休息時間”。
提示:使用LocalDateTime, DayOfWeek
參考資料:
JAVA 8:健壯、易用的時間-日期API - ImportNew.pdf
Java8DateTimeTest.java
Runnable Jar(可選)
我們以前編寫的程式,必須開啟Eclipse或者將相應的.class檔案拷貝出來在命令列下執行相應命令才能運行,如果.class檔案較多且類檔案中有包名,需要將完整的目錄結構及檔案拷貝出來,才能運行。現在希望將Eclipse項目中的Java檔案打打成一個可啟動並執行jar包,在命令列直接運行。改造題目7,使其從命令列接收參數,參數為年-月-日,將項目打成jar包,然後在命令列通過java -jar運行,並。參考檔案如下:
3. 碼雲代碼提交記錄
在碼雲的項目中,依次選擇“統計-Commits曆史-設定時間段”, 然後搜尋並
4. PTA實驗
題目集:jmu-Java-03-物件導向1-基礎-封裝繼承 中的編程(5-1, 5-2, 5-3)
一定要有實驗總結
201521123106《java程式設計》第三周學習總結