學號20155311 2016-2017-2 《Java程序設計》第7周學習總結
教材學習內容總結
- 時間的度量 格林威治時間,簡稱GMT時間,由觀察太陽而得來;世界時,UT;國際原子時,TAI;世界協調時間,UTC;Unix時間,以1970年1月1日00:00:00爲起點而通過的秒數,不考慮閏秒修正;epoch,以1970年1月1日00:00:00爲起點而通過的毫秒數。
- 年曆簡介 儒略曆,四年一閏;格里高利曆改革了儒略曆;ISO 8601標準在數據定義上大部分與格里高利曆相同。 認識時區 日光節約時間。
- Date 使用Date實例的各getTime能夠得到epoch毫秒數,**Data實例只用來當作時間軸上的某一瞬間;利用DataFormat能夠對字符串格式進行處理,分別有GetDateInstance、GetTimeInstance、GetDateTimeInstance
DateFormat java.text.DateFormat復責字符串時間格式處理,DataFormat是個抽象類,其操做類爲java.text.SimpleDataFormat,getDataInstance()、getTimeInstance()、getDataTimeInstance()等靜態用法。
- Calendar 類是一個抽象類,它爲特定瞬間與一組諸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日曆字段之間的轉換提供了一些方法,併爲操做日曆字段(例如得到下星期的日期)提供了一些方法。瞬間可用毫秒值來表示,它是距曆元(即格林威治標準時間 1970 年 1 月 1 日的 00:00:00.000,格里高利曆)的偏移量。 例:Calendar cal = Calendar.getInstance();使用默認時區和語言環境得到一個日曆。 cal.add(Calendar.DAY_OF_MONTH, -1);取當前日期的前一天. cal.add(Calendar.DAY_OF_MONTH, +1);取當前日期的後一天
- 機器時間觀點的API Date實例只表明機器觀點的時間信息;使用Instant的靜態方法now()取得Instant實例,ofEpochMilli()能夠指定Java epoch毫秒數,ofEpochSecod()指定秒數;取得Instant實例後,可使用plusSecond()、plusMillis()、plusNanos()、minusSeconds()、minusMillis()、 MinusNanos()作時間軸上的運算,返回新的Instant實例,表明運算後的時間。
- 人類時間觀點的API Date實例只表明機器觀點的時間信息;在上面那些類的基礎上可使用ZonedDateTime等來進行補充;Month是enum類型,取得表明月份的數字,取得月份要經過getValue()方法,而不是使用oridinal()方法。
TemporalAmount 時間計量,新時間和日期用API用類Duration來定義,對於年、月、日、星期的日期差,可以使用Period類定義,靜態方法ofDays()、ofMonths()、ofWeeks(),返回Period實例。html
教材學習中的問題和解決過程
第十二章第十三章感受還好,第四五六七章的內容纔是java核心內容,比較抽象。以後的內容都是介紹各類API的應用,都是活生生的例子,比較具體,若是以爲難那是由於對這部分知識感到陌生,不熟悉java
代碼調試中的問題和解決過程
java.time.LocalDate:LocalDate是一個不可變的類,它表示默認格式(yyyy-MM-dd)的日期,咱們可使用now()方法獲得當前時間,也能夠提供輸入年份、月份和日期的輸入參數來建立一個LocalDate實例。該類爲now()方法提供了重載方法,咱們能夠傳入ZoneId來得到指定時區的日期。git
(statistics.sh腳本的運行結果截圖)ide
上週考試錯題總結
調用線程的interrupt()方法 ,會拋出()異常對象?
A .
IOException
B .
IllegalStateException
C .
RuntimeException
D .
InterruptedException
E .
SecurityException
正確答案: D Eoop
現有
class Calc {
public static void main(String [] args) {
try {
int x = Integer.parselnt ("42a") ;
//insert code here
System.out.print ("oops");
}
}
}
下面哪行分別插入到第五行,會致使輸 "oops" ?
A .
catch (IllegalArgumentException e) {
B .
} catch (IllegalStateException c) {
C .
} catch (NumbelFormatException n) {
D .
} catch (ClassCastException c) {
正確答案: A C學習
結對及互評
評分標準
- 正確使用Markdown語法(加1分):
- 不使用Markdown不加分
- 有語法錯誤的不加分(連接打不開,表格不對,列表不正確...)
- 排版混亂的不加分
- 模板中的要素齊全(加1分)
- 缺乏「教材學習中的問題和解決過程」的不加分
- 缺乏「代碼調試中的問題和解決過程」的不加分
- 代碼託管不能打開的不加分
- 缺乏「結對及互評」的不能打開的不加分
- 缺乏「上週考試錯題總結」的不能加分
- 缺乏「進度條」的不能加分
- 缺乏「參考資料」的不能加分
教材學習中的問題和解決過程, 一個問題加1分.net
代碼調試中的問題和解決過程, 一個問題加1分線程
- 本週有效代碼超過300分行的(加2分)
- 其餘加分:
- 週五前發博客的加1分
- 感想,體會不假大空的加1分
- 排版精美的加一分
- 進度條中記錄學習時間與改進狀況的加1分
- 有動手寫新代碼的加1分
- 課後選擇題有驗證的加1分
- 代碼Commit Message規範的加1分
- 錯題學習深刻的加1分
- 點評認真,能指出博客和代碼中的問題的加1分
- 結對學習狀況真實可信的加1分
- 扣分:
- 有抄襲的扣至0分
- 代碼做弊的扣至0分
- 遲交做業的扣至0分
點評模板:
點評過的同窗博客和代碼
其餘(感悟、思考等,可選)
本週的內容比較少,我感受比前幾章易於理解,大部分書上的代碼敲進去後都運行成功了,給了我很大的信心。這兩週除了學習之外學生活動那邊也比較忙碌,過了這段時間
我想我或許應該加大投入java學習的時間。
學習進度條
目標 |
5000行 |
30篇 |
400小時 |
|
第一週 |
200/200 |
2/2 |
20/20 |
|
第二週 |
300/500 |
2/4 |
18/38 |
|
第三週 |
500/1000 |
3/7 |
22/60 |
|
第四周 |
300/1300 |
2/9 |
30/90 |
|
第五週 |
280/1260 |
1/5 |
14/70 |
|
|
第六週 |
478/1738 |
2/7 |
16/86 |
|
|
第七週 |
1400/4000 |
10/30 |
145/400 |