时间与日期 20145217 《Java程序设计》第六周学习总结

教材学习内容总结

113.1认识时间与日期

  • 格林威治标准时间:格林威治标准时间简称GMT时间,一开始是参考自格林威治皇家天文台的标准太阳时间,格林威治标准时间的正午是太阳抵达天空最高点之时,格林威治标准时间常被不严谨的当成是UTC时间。
  • 世界时:世界时是借由观测远方星体跨过子午线而得,也称UT,这会比观察太阳来得准确一些。1972年引入UTC之前,GMTUT是相同的。
  • 国际原子时:虽然观察远方星体会比观察太阳来得准确,不过UT基本上仍受地球自转速度影响而会有所误差。1967年定义的国际原子时(TAI),将秒的国际单位定义为铯原子辐射振动9192631770周耗费的时间,时间从UT的1958年开始同步。
  • 世界协调时间:由于基于铯原子振动定义的秒长是固定的,然而地球自转会越来越慢,这会使得实际上 TAI时间会不断超前基于地球自转的UT系列时间,为了保持TAIUT时间不要差距过大,因而提出了具有折衷修正版本的世界协调时间(UTC)。
  • Unix时间:Unix系统的时间表示法,定义为UTC时间1970年1月1日00:00:00为起点而经过的秒数,不考虑闰秒修正,用以表达时间轴上某一瞬间。
  • epoch:某个特定时代的开始,时间轴上某一瞬间。例如java.util.Date封装的时间信息,就是January 1,1970,00:00:00 GMT经过的毫秒数,可以简称为epoch毫秒数。
  • 就目前来说,即使标注为GMT,实际上谈到的时间指的是UTC时间。秒的单位定义是基于TAI,也就是铯原子辐射振动次数。Unix时间是1970年1月1日00:00:00为起点而经过的秒数,不考虑闰秒。
    教材P429 DateDemo.java运行结果如下

时间与日期
20145217 《Java程序设计》第六周学习总结
教材P430 DataFormatDemo.java运行结果:


时间与日期
20145217 《Java程序设计》第六周学习总结

10.2.年历简介:

  • 儒略历,现今公历的前身,用来取代罗马历,修正了罗马历隔三年设置一闰年的错误,改采四年一润。
  • 格里高利历改革了儒略历,由教宗Pope Gregory ⅩⅢ于1582年颁行,将儒略历1582年10月4日星期四的隔天,定为格里高利历1582年10月15日星期五。

HowOld.java:


时间与日期
20145217 《Java程序设计》第六周学习总结
CalendeUtil.java:


时间与日期
20145217 《Java程序设计》第六周学习总结

代码调试中的问题和解决过程

本章内容较易于理解,树上的代码也都实现了,感觉本周的内容很有实用性。上传代码:


时间与日期
20145217 《Java程序设计》第六周学习总结

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第三周 300/600 2/6 20/50
第四周 300/900 2/8 16/66
第五周 300/1200 2/10 16/82
第六周 300/1500 2/12 16/98
第七周 200/1700 2/12 12/110

参考资料