20145314郑凯杰 《Java程序设计》第7周学习总结
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
Date与DateFormat
Date只用来获取epoch毫秒数
DateFormat来格式化成人类理解的年月日时分秒
利用java.text.DateFormat来处理有关字符时间格式的处理有两种方式:
一:构建SimpleDateFormat实例,好处是可以使用模式字符串自定义格式。
二:使用DateFormat的getDateInstance (),getTimeInstance(),getDateTimeInstance()等静态方法。
Calendar: 时间的运算
getInstance():GregorianCalendargetTime()get()add()roll()after()before()
取得的Calendar实例后,用getTime()取得Date实例,如果要取得年月日等时间字段,可以使用get()方法并指定Calendar上的字段枚举常数。
运行CalenderUtil.java
插图2:

第十五章 通用API
日志: 日志对信息安全意义重大,审计、取证、入侵检测等都会用到日志信息
可以使用java.util.TimeZone的getDefault()来取得默认时区信息。
可以使用Instant的静态方法now()取得代表Java epoch毫秒数的Instant实例。
TemporalAmount:时间差以Duration定义,日期差以Period定义。
Localization本地化;Internationalization(i18n)国际化
人类时间观点的API
LocalDateTime包括日期与时间;LocalDate只有日期,如果设定不存在的日期会抛出DateTimeException;LocalTime只有时间。
若需要时区信息,可基于上述三个时间描述的ZoneDateTime和OffsetDateTIme。
代码调试中的问题和解决过程
对于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周学习总结的更多相关文章
- 20145314郑凯杰 《Java程序设计》第10周学习总结
20145314郑凯杰 <Java程序设计>第10周学习总结 代码托管: 学习内容总结 网络编程 会打手机吗? 第一个问题:会打手机吗?很多人可能说肯定会啊,不就是按按电话号码,拨打电话嘛 ...
- 20145314郑凯杰 《Java程序设计》课程总结
20145314郑凯杰 <Java程序设计>课程总结 每周读书笔记链接汇总 ①寒假预习--"helloworld" ②第一周读书笔记 ③第二周读书笔记 ④第三周读书笔记 ...
- 20145314郑凯杰 《Java程序设计》实验五 实验报告
20145314郑凯杰 <Java程序设计>实验五 实验报告 实验搭档王亦徐:http://www.cnblogs.com/1152wyx/p/5471524.html 实验要求 完成实验 ...
- 20145314郑凯杰 《Java程序设计》第9周学习总结 积极主动敲代码
20145314郑凯杰 <Java程序设计>第9周学习总结 教材学习内容总结 第十六章 ①JDBC(Java DataBase Connectivity) 即java数据库连接,是一种用于 ...
- 20145314郑凯杰 《Java程序设计》实验四 实验报告
20145314郑凯杰 <Java程序设计>实验四 实验报告 实验要求 完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用 ...
- 20145314郑凯杰 《Java程序设计》实验三 敏捷开发与XP实践实验报告
20145314郑凯杰 <Java程序设计>实验二 实验报告 实验要求 完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用 ...
- 20145314郑凯杰 《Java程序设计》第8周学习总结
20145314郑凯杰 <Java程序设计>第8周学习总结 教材学习内容总结 代码已托管 第十五章 通用API ①日志: 日志对信息安全意义重大,审计.取证.入侵检测等都会用到日志信息 使 ...
- 20145314郑凯杰 《Java程序设计》实验二 实验报告
20145314郑凯杰 <Java程序设计>实验二 实验报告 实验要求 完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用 ...
- 20145314郑凯杰 《Java程序设计》实验一 Java开发环境的熟悉(Windows + Eclipse)实验报告
20145314郑凯杰 <Java程序设计>实验一 Java开发环境的熟悉(Windows + Eclipse)实验报告 实验要求 •使用JDK编译.运行简单的Java程序: •使用Ecl ...
随机推荐
- vuex应用实例-this.$store.commit()触发
新建文件夹store,store下: action.js const actions = {} export default actions; getter.js const getters = {} ...
- Sass之一(基础篇)
源码链接:http://pan.baidu.com/s/1o8M51hCSass 学习Sass之前,应该要知道css预处理器这个东西,css预处理器是什么呢? Css预处理器定义了一种新的语言将Css ...
- SignalR 循序渐进(四) Hub的生命周期以及IoC
有阵子没更新这个系列了,最近太忙了.本篇带来的是Hub的生命周期以及IoC. 首先,Hub的生命周期,我们用一个Demo来看看: public class TestHub : Hub { public ...
- 时间序列模式——ARIMA模型
ARIMA模型全称为自回归积分滑动平均模型(Autoregressive Integrated Moving Average Model,简记ARIMA),是由博克思(Box)和詹金斯(Jenkins ...
- 优秀Python学习资源收集汇总--强烈推荐(转)
原文:http://www.cnblogs.com/lanxuezaipiao/p/3543658.html Python是一种面向对象.直译式计算机程序设计语言.它的语法简捷和清晰,尽量使用无异义的 ...
- Linux下的物理内存管理2-slab缓存的管理
2017-03-02 在Linux下的物理内存管理中,对SLAB机制大致做了介绍,对SLAB管理结构对象也做了介绍,但是对于小内存块的分配没有介绍,本节重点介绍下slab对小内存块的管理. 内核中使用 ...
- Django orm 中 python manage.py makemigrations 和 python manage.py migrate 这两条命令用途
生成一个临时文件 python manage.py makemigrations 这时其实是在该app下建立 migrations目录,并记录下你所有的关于modes.py的改动,比如0001_ini ...
- 前端 javascript 数据类型 数字
1.数字(Number) JavaScript中不区分整数值和浮点数值,JavaScript中所有数字均用浮点数值表示. 转换: parseInt(..) 将某值转换成数字,不成功则NaN pa ...
- ReSharper Ultimate 2017 下载地址及破解方法
https://download.jetbrains.8686c.com/resharper/JetBrains.ReSharperUltimate.2017.1.2.exe 安装完成后,打开vs ...
- Selenium的PageFactory & PageObject 在大型项目中的应用
因为最近遇到的技术问题一直没找到可行的解决办法,一直在翻看selenium的源代码,之前写测试代码的时候就是拿来即用,写什么功能啊,就按手动的操作步骤去转换,近日看到一个文章,又去wiki上查了查,觉 ...