20145235《Java程序设计》第7周学习总结

教材学习内容总结

13.1 认识时间与日期

  • 格林威治时间(GMT):通过观察太阳而得,因为地球公转轨道为椭圆形且速度不一,本身自传减速而造成误差。
  • 世界时(UT):通过观测远方星体跨过子午线而得,受地球自转速度影响有误差。
  • 国际原子时(TAI):将秒的国际单位定义为铯原子辐射振动9192631770周耗费的时间。
  • 世界协调时间(UTC):保持TAI和UT时间误差不要过大采用了闰秒修正。
  • Unix时间:Unix系统时间表示法,定义为UTC时间1970年1月1日为起点经过的秒数,不考虑闰秒修正。
  • epoch:某个特定时间开始,时间轴上的某一瞬间。
  • 儒略历:现今公历的前身,修正了罗马历隔三年设置一闰年的错误,改采四年一闰。
  • 格里高利历:改革了儒略历,将儒略历1582年10月4号星期四的隔天,订为格里高利历1582年10月15日星期五。
  • ISO 8601标准:统一时间日期的数据交换格式。
  • UTC偏移:精度每15度偏移1小时,通常表示Z符号。
  • 日观节约时间:夏、冬日照时间差异很大时实施。

13.2 认识Date与Calendar

Date:取得系统时间,方法之一就是使用System.currentTimeMillis()方法,返回long类型整数,代表1970年1月1日0时0分0秒0毫秒至今经过的毫秒数。Date有两个构造函数可以使用,一个可使用epoch毫秒数构建,另一个为无自变量构造函数,内部亦是使用System.currentTimeMillis()取得毫秒数,调用getTime()可取得内部保存的epoch毫秒数值。

20145235《Java程序设计》第7周学习总结

有关字符串时间格式的处理,职责落到了java.text.DateFormat身上。可以通过DAteForm的各种静态方法,进行格式化;还可以使用模式字符串自定义格式。parse()方法,可以将指定的字符串剖析为Date实例

20145235《Java程序设计》第7周学习总结

  • Date建议作为时间轴上的瞬时代表,要格式化时间日期则通过DateFormat,如果想要取得某个时间日期信息,或者是对时间日期进行操作,可以使用calendar。
  • 建立Calendar实例,可以使用get()方法并指定Calendar上的字段。 使用add()方法改编时间,使用roll()方法只针对日期中的某个字段加减。
  • 使用Calendar时,并没有使用时区信息,这回使用该默认时区,可以使用java.util.TImeZone的getDefault()来取得默认时区信息
  • 可用的ID可以使用TimeZone.getAvailableIDs()来取得,它会返回String[]

13.3 JDK8新时间日期API

  • LocalDateTime只包括时间与日期,LocalDate只有日期,LocalTime只有时间,他们都是对时间的描述,没有时区信息。
  • 如果你的时间日期需要带有时区,可以基于LocalDateTime、LocalDate、LocalTime等来补充缺少的信息。
  • 如果想要取得代表月份的数字,不要使用oridinal()方法,因为oridinal()是enum在定义时的顺序,从0开始,想要取得代表月份的数要通过getValue()方法。
  • 在新的时间与日期API中,UTC偏移量与时区的概念是分开的,offsetDateTime单纯代表UTC偏移量,使用ISO 8601。如果只想表示2014年,可以使用Year,如果想表示2014/5,可以使用YearMonth,如果只想表示5月,可以使用Month,如果想表示5/4,可以使用MonthDay,其中Month是enum型,如果你想要取得代表月份的数字,不要使用oridinal()方法,因为oridinal()是enum在定义时的顺序,从0开始,想要取得代表月份的数要通过getValue()方法。
  • 对时间的运算:period与Duration乍看有些难区别,period是日期差,between()方法只接受LocalDate,不表示比“日”更小的单位。然而Duration是时间差,between()方法可以接受LocalDateTime()、LocalDate()、LocalTime(),不表示比“天”更大的单位。

代码托管情况

20145235《Java程序设计》第7周学习总结

其他(感悟、思考等,可选)

我感觉这学期我做了大量没用的事情,这学期的主修课不像以往学期那样用课余时间去静下心来好好看,我不想欺骗自己,不会就是不会,学不懂就是学不懂,但是不会不懂并不代表放弃,就算是爬也要爬到终点。这周一从头开始看java视屏了,感觉效果超级棒,尽管做有些东西是背叛自己欺骗自己,但是我觉得值,因为我绝不愿意到头来一无所获。难免有天生自怜的情绪,难免自己感动自己,唯有保持清新,才能看清真正的价值。

上一篇:HDU 3833 YY's new problem(换种思路的模拟,防超时)


下一篇:Tomcat软件使用常见问题