20145205 《Java程序设计》第7周学习总结
教材学习内容总结
认识时间与日期
1.格林威治时间(GMT):通过观察太阳而得,因为地球公转轨道为椭圆形且速度不一,本身自传减速而造成误差。
2.世界时(UT):通过观测远方星体跨过子午线而得,受地球自转速度影响有误差。
3.国际原子时(TAI):将秒的国际单位定义为铯原子辐射振动9192631770周耗费的时间。
4.世界协调时间(UTC):保持TAI和UT时间误差不要过大采用了闰秒修正。
5.Unix时间:Unix系统时间表示法,定义为UTC时间1970年1月1日为起点经过的秒数,不考虑闰秒修正。
6.epoch:某个特定时间开始,时间轴上的某一瞬间。
7.ISO 8601标准:统一时间日期的数据交换格式,例如:yyyy-mm-ddTHHH:MM:SS.SSS等。
8.UTC偏移:精度每15度偏移1小时,通常表示Z符号。
Date与DateFormat
1.Date:取得系统时间,方法之一就是使用System.currentTimeMillis()
方法,返回long类型整数,代表1970年1月1日0时0分0秒0毫秒至今经过的毫秒数。Date有两个构造函数可以使用,一个可使用epoch
毫秒数构建,另一个为无自变量构造函数,内部亦是使用System.currentTimeMillis()
取得毫秒数,调用getTime()
可取得内部保存的epoch
毫秒数值。
p429DateDemo.java
运行结果
2.DateFormat:DateFormat
是个抽象类,其操作类是java.text.SimpleDateFormat
,可以处理字符串时间格式。可以通过DateForm的各种静态方法进行格式化,使用模式字符串自定义格式,使用parse()
方法将指定的字符串剖析为Date实例。
p430DateFormatDemo.java
运行结果
Calendar:
1.Calendar
:想要取得某个时间日期信息,或者是对时间日期进行操作,可以使用Calendar实例。Calendar
是个抽象类,java.util.GregorianCalendar
是其子类,操作了儒略历与格里高利历的混合历。可以设定时间日期等字段,使用add()方法改变Calendar的时间,使用roll()
方法加减日期中某个字段,使用after()
或before()
方法比较两个Calendar
的时间日期先后。
p435CalendarUtil.java
运行结果
2.TimeZone:Calendar
时会使用默认时区,可以使用java.util.TimeZone
的getDefault()
来取得默认时区信息。
p436TimeZoneDemo.java
运行结果
机器时间
1.LocalDateTime:包括日期与时间。
2.LocalDate:只有日期,设定不存在的日期时会抛出DateTimeException错误。
3.LocalTime:只有时间。
4.ZonedDateTime:当补上时区信息后组合起来的时间实际上不存在时,ZonedDateTime会自动更正。
p439ZonedDateTimeDemo.java
运行结果
5.OffsetdateTime:单纯代表UTC偏移量,使用ISO 8601。
6.Year、YearMonth、Month、MonthDay:如果只想要表示年或月,使用Year或Month;如果想要表示年月或月日,使用YearMonth或MonthDay。
p440MonthDemo.java
运行结果
对时间的运算
1.TemporalAmount:TemporalAmount的操作类是Period和Duration。ofPattern()是java.time.format.DateTimeFormatter的静态方法,对于年、月、星期、日的日期差使用Period类定义,plus()方法可以接受Duration实例来计算,对于时间计量,类Duration来定义。
例:p443HowOld2.java运行结果
其他(感悟、思考等,可选)
本周因为重点在于第十三章,所以就偷懒没有看12章,每周一章的感觉还听好的,而且十三章的内容也不多,而且自己看到自己到底活了多久还是蛮有意思的,本周认识到了java中时间的表示和方法,也感受到了这几天的在好天气下运动的快乐。
使用git推送代码
代码托管情况
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 4500行 | 25篇 | 350小时 | |
第一周 | 100/100 | 1/2 | 15/15 | |
第二周 | 150/250 | 1/3 | 12/27 | |
第三周 | 400/650 | 1/4 | 22/49 | |
第四周 | 510/1160 | 1/5 | 32/81 | |
第五周 | 831/1991 | 1/6 | 35/116 | |
第六周 | 945/1991 | 2/6 | 26/142 | |
第七周 | 236/2227 | 3/9 | 18/160 |
20145205 《Java程序设计》第7周学习总结的更多相关文章
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20145218《Java程序设计》第一周学习总结
20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...
- 《Java程序设计》第九周学习总结
20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
- 《Java程序设计》第二周学习总结
20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...
随机推荐
- js中解决函数中使用外部函数局部变量的问题(闭包问题)
如果要取得外部for循环中i的值则必须使用闭包才能解决 如果不使用闭包,直接使用 变量 i 的值是无效的,因为 i 已经在函数调用之前被回收了,所以你是调用不到它的!
- proj.4投影变换图示
- 执行shell出现bad interpreter
执行shell出现bad interpreter:No such file or directory linux执行shell出现bad interpreter:No such file or dir ...
- espcms简约版的表单,提示页,搜索列表页
模板/lib/form.html <script type="text/javascript" src="{%$rootdir%}js/My97DatePicker ...
- ServletConfig 可以做啥
1.获得 servlet配置的servletname 2.获得servlet 配置的 getInitParameter("keyname") 3.获得servlet配置的 所有的 ...
- centOS 虚拟机设置固定IP:图形化设置
右键单击图形化标志,Edit Connection 设置一下就可以了.
- Effective C++阅读笔记_条款2:尽量以const,enum,inline替换#define
1.#define缺点1 #define NUM 1.2 记号NUM可能没有进入记号表,在调试或者错误信息中,无法知道1.2的含义. 改善:通过const int NUM = 1.2; 2.#dein ...
- Xcode 中的相对路径与绝对路径的相关设置
近日闲来无事,与博客园中闲荡,忽至一烟霞照耀祥瑞蒸熏松竹翠秀奇花遍开的神奇之地.如此美景,令人心生向往,故而徜徉于其中不可自拔,独乐乐不如众乐乐: iOS开发之 相对路径与绝对路径 https://d ...
- 火狐min-height不兼容解决方法
我们在进行页面架构的时候,一般会分成三个section:header.body.footer.如下面这个页面: 这个时候我们就需要对body部分进行最小高度设置,才能避免footer部分出现在页面中间 ...
- 计算机网络中的帧封装(C实现)
这段时间开始复习计算机网络,看到帧封装这一节,结合以前的课程设计,就用C写了个帧封装的程序,说实话C学的确实不怎么样,实现的时候对于文件操作那部分查了好多资料,下面说说帧封装是啥情况. 学过计算机网络 ...