org.joda.time原始碼分析
此前Java處理時間日期所使用的 Date 和 Calendar 被詬病不已,Calendar 的主要問題物件可變,而像時間和日期這樣的類應該是不可變的,另外其概念模型也有不明確的地方,月份計算從0開始等等。
ofollow,noindex">JodaTime開源時間/日期庫 是很好的替代,另外Java8中也推出了新的java.time庫,設計理念與JodaTime相似。
Joda-Time 令時間和日期值變得易於管理、操作和理解。易於使用是 Joda 的主要設計目標。Joda-Time主類 DateTime 和JDK舊有類 Date 和 Calendar之間可以互相轉換。從而保證了與JDK框架的相容。
常用操作
使用過程中的大部分用法計算機程式的思維邏輯 這裡面都有介紹不再贅述
Period原始碼分析
建構函式
第一種:直接宣告 public Period() { super(0L, (PeriodType)null, (Chronology)null); } 第二種:傳入年、月、周、日、時、分、秒、毫秒等值 此處一定要注意中間的周這個值的定義 public Period(int var1, int var2, int var3, int var4) { super(0, 0, 0, 0, var1, var2, var3, var4, PeriodType.standard()); } 第三種: public Period(ReadableInstant var1, ReadableInstant var2, PeriodType var3) { super(var1, var2, var3); }