zoukankan      html  css  js  c++  java
  • 《Java程序设计》第6周学习总结

    20145129 《Java程序设计》第6周学习总结

    教材学习内容总结

    • 认识时间与日期
      • 时间的度量:时间基准有格林威治标准时间、世界时、国际原子时、世界协调时间Unix时间、epoch。
        - 目前来说,即使标注为GMT(无论是文件说明,或是API的日期时间字符串描述),实际上谈到时间指的是UTC时间。
        - 秒的单位定义是基于TAI。
        - UTC考虑了地球自转越来越慢而有闰秒修正,确保UTC与UT相差不会超过0.9秒。
        - Unix时间是1970年1月1日00:00:00为起点而经过的秒数,不考虑闰秒。
      • 年历简介:历法有儒略历、格里高利历、ISO 8601标准。
      • 认识时区
    • 认识Data与Calendar
      • 时间轴上瞬间的Data
        • 获取系统时间方法之一是使用System.currentTimeMillis()方法,返回的是long类型整数。
      • 格式化时间日期的DataFormat:DateFormat是个抽象类,其操作类是java.text.SimpleDateFormat。可以直接构建SimpleDateFormat实例,或是使用DateForma的getDataInstance()、getTimeInstance()、getDataTimeInstance()等静态方法。
        • 直接构SimpleDateForma好处是可使用模式字符串自定义格式。
        • SimpleDateFormat有个parse()方法,可构建SimpleDateFormat时指定的格式,将指定的字符串剖析为Date实例。
      • 处理时间日期的Calendar
        • 若要取得某个时间日期信息,或者是对时间日期进行操作,可以使用Calendar实例。
        • Calendar是抽象类,java.util.GregorianCalendar是其子类,操作了儒略历和格里高利历的混合历。
        • 通过Calendar的getInstance()取得的Calendar实例,默认就是取得GregorianCalendar实例。取得Calendar实例后,可以使用getTime()取得Date实例。
        • 设定时间日期等字段,不能对Data设定,应该使用Calendar,用枚举常数设定。
        • 取得Calendar实例后,可以使用add()方法,来改变Calendar。
        • 只针对日期中某个字段加减,则可以使用roll()方法。
        • 想要比较两个Calendar的时间日期先后,可以使用after()或before()方法。
      • 设定TimeZone
        • 在使用Calendar时,并没有使用时区信息,这时候会使用默认时区,使用java.util.TimeZone的getDefault()来取得默认时区信息。
    • JDK8新时间日期API
      • 机器时间观点的API:JDK8新时间日期处理API的主要套件名为java.time。
      • 人类时间观点的API
        • LocalDateTime、LocalDate和LocalTime:JDK8新时间与日期API有LocalDateTime(包括日期与时间)、LocalDate(只有日期)、LocalTime(只有时间)等类来定义,是不具有时的时间与日期定义。
        • ZoneDateTime和OffseDateTime:ZoneDateTime与OffseDateTime间可以通过toXXX()方法互转。
        • Year、YearMonth、Month和MonthDay:想要取得代表月份的数要通过getValue()方法。
      • 对时间的运算
        • TemporalAmount
        • TemporalUnit
        • Temporal
        • TemporalAccessor:定义了只读的时间对象读取操作。
      • 年历系统设计:java.time套件中的类在需要实行年历系统时都是采用单一的ISO8601年历系统。

    教材学习中的问题和解决过程

    这一章比较好理解,暂时没有问题
    

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

    代码已托管http://git.oschina.net/l_cat_1/Time/tree/master

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

    实践能进步,有问题先自己学习解决,不懂再问,这样可以提高学习独立性。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 3000行 15篇 300小时
    第一周 50/50 2/2 14/14
    第二周 100/150 1/3 10/24
    第三周 300/450 1/4 15/39
    第四周 350/800 1/5 50/74
    第五周 200/1000 1/6 30/104
    第六周 500/1500 2/8 26/130
    第六周 200/1700 2/10 20/130
  • 相关阅读:
    简易的sniffer程序
    ubuntu 13.10 Rhythmbox不能播放mp3 和中文乱码的问题
    5.单行函数,多行函数,字符函数,数字函数,日期函数,数据类型转换,数字和字符串转换,通用函数(case和decode)
    Java设计模式-单例模式
    WordPress的用户系统总结
    STM8S EEPROM 操作
    简化ui文件转换写法
    大型网站架构之应用服务器集群化
    大型网站架构之分布式缓存
    大型网站架构之JAVA中间件
  • 原文地址:https://www.cnblogs.com/l-cat/p/5402848.html
Copyright © 2011-2022 走看看