20155229 2016-2017-2 《Java程序設計》第七周學習總結
教材學習內容總結
第十二章
-
lambda的主體是一個表達式,而不是一個代碼塊。僅僅能在lambda表達式中封裝有限的邏輯進去。
-
lambda表達式是起到一個函數速寫的作用。允許在代碼內嵌入一個函數的定義。
-
除了參考靜態方法作為函數接口操作之外,還可以參考特定對象的實例方法。函數接口也可以參考類上定義的非靜態方法。
第十三章
-
格林威治標准時間(GMT),現已不作為標准時間使用,即使標注為GMT(格林威治時間),實際上談到的的是UTC(Unix時間)時間。
-
秒的單位定義時基於TAI。也就是銫原子輻射的振動次數。
-
世界協調時間(UTC),UTC考慮了地球自轉越來越慢而有閏秒修正,確保UTC與UT相差不會超過0.9秒。
-
Date有兩個構造函數可以使用,一個可使用epoch毫秒數構建,另一個為無自變量構造函數,內部亦是使用System.currentTimeMillis()取得毫秒數,調用getTime()可取得內部保存的epoch毫秒數值。
-
DateFormat是個抽象類,其操作類是java.text.SimpleDateFormat,你可以直接構建SimpleDateFormat實例,或是使用DateFormat的getDateInstance()、getTimeInstance()、getDateTimeInstance等靜態方法,用較簡便方式按不同需求取得SimpleDateFormat實例。
-
Calendar是個抽象類,java.util.GregorianCalendar是其子類,操作了儒略歷與格里高利歷的混合歷,通過Calendar的getInstance()取得的Calendar實例,默認就是取得GregorianCalendar實例。
教材學習中的問題和解決過程
-
問題一:
SimpleDateFormat的相關問題 -
解決:
-
問題二:Calendar的注意事項
-
解決:
1.Calendar的星期是從周日開始的,常量值為0。
2.Calendar的月份是從一月開始的,常量值為0。
3.Calendar的每個月的第一天值為1。
代碼調試中的問題和解決過程
本周學習的中尚未遇到代碼調試的問題
代碼托管
上周考試錯題總結
- 錯題一:
下面哪條命令可以把 f1.txt 復制為 f2.txt ?
A .
cp f1.txt f2.txt
B .
copy f1.txt f2.txt
C .
cat f1.txt > f2.tx
D .
cp f1.txt | f2.tx
E .
copy f1.txt | f2.tx
-
解析:答案為A、C
我選擇時只考慮了C的情況,沒有考慮A的情況 -
錯題二:
如果有以下代碼段:
Thread thread = new Thread(new ________________() {
public void run() {...}
});
空白部分指定哪些類型可以通過編譯?
A .Runnable
B .Thread
C .Future
D .Executor
-
解析:
選A、B,因為Thread 也實現了 Runnable 接口 -
錯題三:
給定一個Stream的實例s, 一個Collection的實例c, 下面哪些選項可以創建一個並行流?
A .new ParallelStream(s)
B .c.parallel()
C .s.parallelStream()
D .c.parallelStream()
E .new ParallelStream(c)
F .s.parallel()
- 解析:
選D、F;
- 錯題四:
Which of the following are true? (Choose all that apply.)
A .
A new Console object is created every time System.console() is called.
B .
Console can only be used for reading input and not writing output.
C .
Console is obtained using the singleton pattern.
D .
When getting a Console object, it might be null.
E .
When getting a Console object, it will never be null.
選C、D,我當時只選了D
結對及互評
評分標准
-
正確使用Markdown語法(加1分):
- 不使用Markdown不加分
- 有語法錯誤的不加分(鏈接打不開,表格不對,列表不正確...)
- 排版混亂的不加分
-
模板中的要素齊全(加1分)
- 缺少“教材學習中的問題和解決過程”的不加分
- 缺少“代碼調試中的問題和解決過程”的不加分
- 代碼托管不能打開的不加分
- 缺少“結對及互評”的不能打開的不加分
- 缺少“上周考試錯題總結”的不能加分
- 缺少“進度條”的不能加分
- 缺少“參考資料”的不能加分
-
教材學習中的問題和解決過程, 一個問題加1分
-
代碼調試中的問題和解決過程, 一個問題加1分
-
本周有效代碼超過300分行的(加2分)
- 一周提交次數少於20次的不加分
-
其他加分:
- 周五前發博客的加1分
- 感想,體會不假大空的加1分
- 排版精美的加一分
- 進度條中記錄學習時間與改進情況的加1分
- 有動手寫新代碼的加1分
- 課后選擇題有驗證的加1分
- 代碼Commit Message規范的加1分
- 錯題學習深入的加1分
- 點評認真,能指出博客和代碼中的問題的加1分
- 結對學習情況真實可信的加1分
-
扣分:
- 有抄襲的扣至0分
- 代碼作弊的扣至0分
- 遲交作業的扣至0分
點評過的同學博客和代碼
- 本周結對學習情況
-
結對照片
- 結對學習內容
1.學習第十三章內容
2.解決上周考試錯題
3.實驗問題相互請教
其他(感悟、思考等,可選)
本周首先是在考試上出現了很多問題,很多多選題,我只能選出一個正確答案,不能將答案完整的做出,這一點能夠表明,在一些知識點上,我還不是很熟悉或者是學習的不是很深入,還需要多下功夫,才能學習的更好。
學習進度條
代碼行數(新增/累積) | 博客量(新增/累積) | 學習時間(新增/累積) | 重要成長 | |
---|---|---|---|---|
目標 | 5000行 | 15篇 | 400小時 | |
第一周 | 9/9 | 1/1 | 20/20 | |
第二周 | 162/ 171 | 1/2 | 25/45 | 學習java的基礎語法 |
第三周 | 380/ 551 | 1/3 | 25/70 | 學習java對象及封裝 |
第四周 | 831/ 1382 | 1/4 | 23/93 | 學習java的繼承、接口與多態的運用 |
第五周 | 870/2252 | 1/5 | 20/113 | 學習java的異常處理和collection與map |
第六周 | 1241/3493 | 1/6 | 22/135 | 學習java的輸入輸出、線程與Api,與搭檔一起學習 |
第七周 | 429/3922 | 2/8 | 15/150 | 學習java的時間與日期、第一次實驗 |
-
計划學習時間:20小時
-
實際學習時間:15小時
-
改進情況:本周主要學習的是第十三章時間與日期,次要學習第十二章,還有准備第一次java實驗,所以在時間上,明顯花的不是很多,但還需抽空看看第十二章,也許不需要太深入的學習,至少也需要多讀幾遍書。