20155328 2016-2017-2 《Java程序設計》第7周學習總結
教材學習內容總結
-
時區
-
Date與DateFormat
-
Date只用來獲取epoch毫秒數
-
DateFormat來格式化成人類理解的年月日時分秒
-
-
Calendar: 時間的運算
-
getInstance(): 默認取得GregorianCalendar(Calendar的子類)實例。
-
get():取得年月日等時期時間字段(指定字段枚舉常數:Calendar.YEAR, ~.MONTH, ~.DATE)注意:get(Calendar.MONTH比正常值小1)
-
add():正數為加,負數為減;eg:calendar.add(Calendar.YEAR,-2);
-
before():比較是否在某個日期前;after():比較是否在某個日期后
-
getTimeZone("ID字符串"):java.util.TimeZone的方法
-
-
教材學習中的問題和解決過程
-
問題1:正在學教材432頁How Old程序的時候狄維佳同學回來了,告訴我可以讓輸出結果變成四百多歲,就將程序最后的L去掉了,輸出結果變成了四百多。
-
解決方案:最后的L是強制類型轉換,輸出的實際結果已經超過了int范圍,在二進制中只保留其最后32位。
-
問題2:對clone的用法不是很理解。
-
解決方案:在實際編程過程中,我們常常要遇到這種情況:有一個對象A,在某一時刻A中已經包含了一些有效值,此時可能 會需要一個和A完全相同新對象B,並且此后對B任何改動都不會影響到A中的值,也就是說,A與B是兩個獨立的對象,但B的初始值是由A對象確定的。在 Java語言中,用簡單的賦值語句是不能滿足這種需求的。要滿足這種需求雖然有很多途徑,但實現clone()方法是其中最簡單,也是最高效的手段。
代碼調試中的問題和解決過程
-
問題1:在拷貝書上代碼運行時,出現了下圖這樣的標紅錯誤:
-
問題1解決方案:發現是沒有撰寫dateTimeInstanceDemo,寫了就好了。
代碼托管
(statistics.sh腳本的運行結果截圖)
上周考試錯題總結
1
(多選題|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
copy是Windows下的命令。cat f1.txt > f2.tx 通過輸出重定向實現了復制。
6
(多選題|1分)
如果有以下代碼段:
Thread thread = new Thread(new ________________() {
public void run() {...}
});
空白部分指定哪些類型可以通過編譯?
:
A .
Runnable
B .
Thread
C .
Future
D .
Executor
查API文檔,Thread 也實現了 Runnable 接口
10
(多選題|1分)
Given an instance of a Stream, s, and a Collection, c, which are valid ways of creating a parallel stream? (Choose all that apply.)
給定一個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沒有階級parallelstream,所以A和E是不正確的。方法定義在流類從現有流創建一個並行流parallel();因此F是正確的,C是不正確的。方法中定義的類創建從一個集合的並行流parallelstream();因此D是正確的,B是不正確的。
15.(單選題|1分)
Assuming / is the root directory, which of the following are true statements? (Choose all that apply.)
:
A .
/home/parrot is an absolute path.
B .
/home/parrot is a directory.
C .
/home/parrot is a relative path.
D .
The path pointed to from a File object must exist.
E .
The parent of the path pointed to by a File object must exist
根目錄開始的路徑是絕對路徑,所以A是正確的,C是錯誤的。B是不正確的,因為路徑可能是文件系統中的文件或目錄。文件對象可以指向文件系統中不存在的路徑,所以D和E是錯誤的。
點評過的同學博客和代碼
- 本周結對學習情況
- [20155325](http://www.cnblogs.com/GDDFZ/p/6683560.html)
- 結對照片
其他(感悟、思考等,可選)
這周學習的內容少了很多,再加上實驗,感覺自己提升了一些學習效率,也更加注重了思考。
學習進度條
代碼行數(新增/累積) | 博客量(新增/累積) | 學習時間(新增/累積) | 重要成長 | |
---|---|---|---|---|
目標 | 5000行 | 30篇 | 400小時 | |
第一周 | 8/8 | 1/1 | 20/20 | |
第二周 | 164/172 | 1/2 | 25/45 | |
第三周 | 248/420 | 1/3 | 25/70 | |
第四周 | 465/885 | 1/4 | 25/95 | |
第五周 | 390/1275 | 1/5 | 15/110 | |
第六周 | 626/1901 | 1/6 | 24/134 | |
第七周 | 269/2170 | 2/8 | 20/154 |
嘗試一下記錄「計划學習時間」和「實際學習時間」,到期末看看能不能改進自己的計划能力。這個工作學習中很重要,也很有用。
耗時估計的公式
:Y=X+X/N ,Y=X-X/N,訓練次數多了,X、Y就接近了。
-
計划學習時間:24小時
-
實際學習時間:20小時
-
改進情況:
(有空多看看現代軟件工程 課件
軟件工程師能力自我評價表)