20145314郑凯杰 《Java程序设计》第7周学习总结

教材学习内容总结

首先放上代码托管图片和本地代码图片:

插图4:

插图5:

插图6:

第十三章 时间与日期

13.1 认识时间与日期

时间的度量

  • 格林威治标准时间GMT(Greenwich Mean Time)时间:现在不是标准时间
  • 世界时(Universal Time,UT):1972年UTC出来之前,UT等价于GMT
  • 国际原子时(TAI):秒的定义
  • 世界协调时间(Corrdinated Universal Time, UTC): 闰秒,也就是铯原子辐射的振动次数。
  • Unix时间: 1970.1.1 00:00:00开始的秒数
  • epoch: java.util.Date epoch毫秒数

日历

  • 公历
  • 儒略历,修正罗马历每三年设置一闰年的错误,改为四年。
  • 格里高利历,将儒略历1582年10月4号星期四的隔天,订为格里高利历1582年10月15日星期五。
  • ISO 8601标准,例如yyyy-mm-ddTHH:MM:SS.SSS这样格式的时间日期表示方法的标准。

13.2 认识Date与Calendar

Date:

System.currentTimeMillis():1970年1月1日0时0分0秒0毫秒至今经过的毫秒数。

用书上的例子来演示:

插图1:

可调用getTime()取得内部保存的epoch毫秒数值:

格式化时间日期的DateFormat

DateDateFormat
Date只用来获取epoch毫秒数
DateFormat来格式化成人类理解的年月日时分秒

利用java.text.DateFormat来处理有关字符时间格式的处理有两种方式:

一:构建SimpleDateFormat实例,好处是可以使用模式字符串自定义格式。
二:使用DateFormat的getDateInstance (),getTimeInstance(),getDateTimeInstance()等静态方法。

Calendar: 时间的运算

  • getInstance(): GregorianCalendar
  • getTime()
  • get()
  • add()
  • roll()
  • after()
  • before()

取得的Calendar实例后,用getTime()取得Date实例,如果要取得年月日等时间字段,可以使用get()方法并指定Calendar上的字段枚举常数。

运行CalenderUtil.java

插图2:

第十五章 通用API

日志: 日志对信息安全意义重大,审计、取证、入侵检测等都会用到日志信息

可以使用java.util.TimeZonegetDefault()来取得默认时区信息。

可以使用Instant的静态方法now()取得代表Java epoch毫秒数的Instant实例。

TemporalAmount:时间差以Duration定义,日期差以Period定义。

Localization本地化;Internationalization(i18n)国际化

人类时间观点的API

LocalDateTime包括日期与时间;LocalDate只有日期,如果设定不存在的日期会抛出DateTimeExceptionLocalTime只有时间。

若需要时区信息,可基于上述三个时间描述的ZoneDateTimeOffsetDateTIme

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

对于DateDemo.java

我们知道其中的.currentTimeMillis的用法是返回以毫秒为单位的当前时间。当返回值的时间单位是毫秒时,值的粒度取决于底层操作系统,并且粒度可能更大。

于是对其进行深究确认:

运行了两次就可以知道其区别:

插图1:

插图3:

所以就可以推断出返回以毫秒为单位的当前时间。

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

本周的学习是JAVA较末尾的学习了。一晃眼,已经基本上学完了这厚厚的一本书。回首时间,才过了三分之一个学期,但是却完成了将近一学期的内容。这无论是对于哪方面来说,都是巨大的收获。虽然,真正掌握了多少我并不能确定。但是我相信,在下一次的实验中,在下一次的做项目中,我一定可以运用起我自己的所学的内容!

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 50/50 1/2 20/20
第二周 700/600 2/4 38/38
第三周 900/1100 1/7 60/60
第四周 913/1350 1/9 90/90

参考资料

20145314郑凯杰 《Java程序设计》第7周学习总结的更多相关文章

  1. 20145314郑凯杰 《Java程序设计》第10周学习总结

    20145314郑凯杰 <Java程序设计>第10周学习总结 代码托管: 学习内容总结 网络编程 会打手机吗? 第一个问题:会打手机吗?很多人可能说肯定会啊,不就是按按电话号码,拨打电话嘛 ...

  2. 20145314郑凯杰 《Java程序设计》课程总结

    20145314郑凯杰 <Java程序设计>课程总结 每周读书笔记链接汇总 ①寒假预习--"helloworld" ②第一周读书笔记 ③第二周读书笔记 ④第三周读书笔记 ...

  3. 20145314郑凯杰 《Java程序设计》实验五 实验报告

    20145314郑凯杰 <Java程序设计>实验五 实验报告 实验搭档王亦徐:http://www.cnblogs.com/1152wyx/p/5471524.html 实验要求 完成实验 ...

  4. 20145314郑凯杰 《Java程序设计》第9周学习总结 积极主动敲代码

    20145314郑凯杰 <Java程序设计>第9周学习总结 教材学习内容总结 第十六章 ①JDBC(Java DataBase Connectivity) 即java数据库连接,是一种用于 ...

  5. 20145314郑凯杰 《Java程序设计》实验四 实验报告

    20145314郑凯杰 <Java程序设计>实验四 实验报告 实验要求 完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用 ...

  6. 20145314郑凯杰 《Java程序设计》实验三 敏捷开发与XP实践实验报告

    20145314郑凯杰 <Java程序设计>实验二 实验报告 实验要求 完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用 ...

  7. 20145314郑凯杰 《Java程序设计》第8周学习总结

    20145314郑凯杰 <Java程序设计>第8周学习总结 教材学习内容总结 代码已托管 第十五章 通用API ①日志: 日志对信息安全意义重大,审计.取证.入侵检测等都会用到日志信息 使 ...

  8. 20145314郑凯杰 《Java程序设计》实验二 实验报告

    20145314郑凯杰 <Java程序设计>实验二 实验报告 实验要求 完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用 ...

  9. 20145314郑凯杰 《Java程序设计》实验一 Java开发环境的熟悉(Windows + Eclipse)实验报告

    20145314郑凯杰 <Java程序设计>实验一 Java开发环境的熟悉(Windows + Eclipse)实验报告 实验要求 •使用JDK编译.运行简单的Java程序: •使用Ecl ...

随机推荐

  1. IOS 设置ios中DatePicker的日期为中文格式

    设置ios中DatePicker的日期为中文格式 1.在模拟器中的“设置”-“通用”-“多语言环境”-“语言”设置为“简体中文”, 2.“区域格式”设置为“中国”.

  2. LeetCode 笔记系列16.2 Minimum Window Substring [从O(N*M), O(NlogM)到O(N),人生就是一场不停的战斗]

    题目:Given a string S and a string T, find the minimum window in S which will contain all the characte ...

  3. 关于微信小程序的场景值

    微信小程序 “场景值”     对运营同学和产品比较有用一般开发者需在这里埋点,获取场景址,看一下小程序,用户一般从哪个路口进的有利于提升产品体验

  4. 第九课——MySQL优化之索引和执行计划

    一.创建索引需要关注什么? 1.关注基数列唯一键的数量: 比如性别,该列只有男女之分,所以性别列基数是2: 2.关注选择性列唯一键与行数的比值,这个比值范围在0~1之前,值越小越好: 其实,选择性列唯 ...

  5. odex反编译dex异常 Cannot locate boot class path file /system/framework/core.odex

      为了将ROM中system/app下的CertInstaller.odex反编译为CertInstaller.dex,输入命令: "java -jar baksmali.jar -x C ...

  6. 服务器端Session和客户端Session(和Cookie区别)2

    https://blog.csdn.net/java_faep/article/details/78082802 我们可以得出如下结论: 关闭浏览器,只会是浏览器端内存里的session cookie ...

  7. arcgis server/portal 日志格式化脚本

    友好化格式阅读 背景 通过arcgis for server manager中的logs选项卡可以查看当前站点的日志.其该页面提供了友好的日志显示方式. 但是在实际情况中,如arcgis server ...

  8. 一.shell基础知识

    参考网站:http://billie66.github.io/TLCL/book/chap08.html 1.字符“*”--展开 [me@linuxbox ~]$ echo * Desktop Doc ...

  9. 深入浅出MySQL-DDL语句

    DDL语句 DDL是数据定义语言的缩写,简单来说,就是对数据库内部的对象进行创建.删除.修改等操作的语言.它和DML(数据操纵语言)的最大区别是DML知识对表内部的数据操作,而不涉及表的定义.结构的修 ...

  10. 如何理解PHP的单例模式

    单例模式就是让类的一个对象成为系统中的唯一实例,避免大量的 new 操作消耗的资源. PHP的单例模式实现要求: 1.一个private的__construct是必须的,单例类不能在其它类中实例化,只 ...