20155301 2016-2017-2 《Java程序設計》第7周學習總結

20155301 2016-2017-2 《Java程序設計》第7周學習總結

教材學習內容總結

1.例如html

Compartor<String>byLength=new Comparator<String>(){
        public int compare(String name1,String name2){
            return name1.length()-name2.length();
        }
        }

JDK8提供了方法參考的特性,能夠重用byLength方法。方法參考不只避免了重複撰寫Lambda表達式,也可讓程序代碼更清楚。使用JDK8的話,可使用Lambda特性去除重複的信息java

Comparator<String>byLength = 
      (String name1,String name2)->name1.length() - name2.length();

2.在只有Lambda表達式的狀況下,參數的類型必須寫出來,若是有目標類型的話,在編譯程序可推斷出類型的狀況下,就能夠不寫出Lambda表達式的參數類型。例如如下範例可從Comparator中推斷出name1與name2的類型,其實是String,於是不用寫出參數類型。git

Comparator<String>byLength = (name1,name2) -> name1.length() - name2.length();

3.關鍵詞FunctionalInterface,若是接口使用了 @FunctionalInterface 來標註,而自己並不是函數接口的話,就會引起編譯錯誤
4.時間的度量 (1)格林威治標準時間(GMT),現已不做爲標準時間使用
(2)世界時:在1972年引入UTC以前,GMT與UT是相同的
(3)國際原子時(TAI),秒的單位定義是基於TAI,也就是銫原子輻射振動次數。
(4)世界協調時間(UTC),UTC考慮了地球自轉愈來愈慢而有閏秒修正,確保UTC與UT相差不會超過0.9秒。
(5)Unix時間 不考慮閏秒修正,用以表達時間軸上某一瞬間
(6)epoch:某個特定時代的開始,用以表達時間軸上某一瞬間。
5.取得系統時間:System.currentTimeMillis()方法,並返回long類型整數。image
6.DateFormat是個抽象類,其操做類是java.text.SimpleDateFormat,你能夠直接構建SimpleDateFormat實例,或是使用DateFormat的getDateInstance()、getTimeInstance()、getDateTimeInstance等靜態方法,用較簡便方式按不一樣需求取得SimpleDateFormat實例
image
7.SimpleDateFormat有一個parse()方法,能夠按構建SimpleDateFormat時指定的格式,將指定的字符串剖析爲Date實例。
image
8.若是你的時間日期須要帶有時區,能夠基於LocalDateTime、LocalDate、LocalTime等來補充缺乏的信息
image
9.ofPattern()是java.time.format.DateTimeFormatter的靜態方法,能夠查看API文件瞭解格式化的方式。對於時間計量,新時間與日期API以類Duration來定義,可用於計量天、時、分、秒的時間差,精度調整能夠達納秒等級,而秒的最大值能夠是long類型可保存值。對於年、月、星期、日的日期差,使用Period類定義。plus()方法能夠接受Duration實例來計算
image函數

教材學習中的問題和解決過程

代碼調試中的問題和解決過程

1.定義的是public class卻出現以下問題image學習

代碼託管

image
image

上週考試錯題總結

結對及互評

評分標準

  1. 正確使用Markdown語法(加1分):
    • 不使用Markdown不加分
    • 有語法錯誤的不加分(連接打不開,表格不對,列表不正確...)
    • 排版混亂的不加分
  2. 模板中的要素齊全(加1分)
    • 缺乏「教材學習中的問題和解決過程」的不加分
    • 缺乏「代碼調試中的問題和解決過程」的不加分
    • 代碼託管不能打開的不加分
    • 缺乏「結對及互評」的不能打開的不加分
    • 缺乏「上週考試錯題總結」的不能加分
    • 缺乏「進度條」的不能加分
    • 缺乏「參考資料」的不能加分
  3. 教材學習中的問題和解決過程, 一個問題加1分ui

  4. 代碼調試中的問題和解決過程, 一個問題加1分.net

  5. 本週有效代碼超過300分行的(加2分)
    • 一週提交次數少於20次的不加分
  6. 其餘加分:
    • 週五前發博客的加1分
    • 感想,體會不假大空的加1分
    • 排版精美的加一分
    • 進度條中記錄學習時間與改進狀況的加1分
    • 有動手寫新代碼的加1分
    • 課後選擇題有驗證的加1分
    • 代碼Commit Message規範的加1分
    • 錯題學習深刻的加1分
    • 點評認真,能指出博客和代碼中的問題的加1分
    • 結對學習狀況真實可信的加1分
  7. 扣分:
    • 有抄襲的扣至0分
    • 代碼做弊的扣至0分
    • 遲交做業的扣至0分

點評模板:

  • 博客中值得學習的或問題:
    • xxx
    • xxx
    • ...
  • 代碼中值得學習的或問題:
    • xxx
    • xxx
    • ...
  • 基於評分標準,我給本博客打分:XX分。得分狀況以下:xxx設計

  • 參考示例3d

點評過的同窗博客和代碼

其餘(感悟、思考等,可選)

xxx
xxx調試

學習進度條

代碼行數(新增/累積) 博客量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第一週 200/200 2/2 20/20
第二週 300/500 2/4 18/38
第三週 500/1000 3/7 22/60
第七週 361/1800 6/9 30/90

嘗試一下記錄「計劃學習時間」和「實際學習時間」,到期末看看能不能改進本身的計劃能力。這個工做學習中很重要,也頗有用。
耗時估計的公式
:Y=X+X/N ,Y=X-X/N,訓練次數多了,X、Y就接近了。

參考:軟件工程軟件的估計爲何這麼難軟件工程 估計方法

  • 計劃學習時間:XX小時

  • 實際學習時間:XX小時

  • 改進狀況:

(有空多看看現代軟件工程 課件
軟件工程師能力自我評價表
)

參考資料

相關文章
相關標籤/搜索