您的位置:首页 > 编程语言 > Java开发

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

2016-04-17 22:17 627 查看

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

教材学习内容总结

本周主要进行第十二章和第十三章的学习。

Lambda定义:一个不用被绑定到一个标识符上,并且可能被调用的函数。

在只有Lambda表达式的情况下,参数的类型必须写出来,如果有目标类型的话,在编译程序可推断出类型的情况下,就可以不写出Lambda表达式的参数类型。

Lambda表达式本身是中性的,不代表任何类型的实例,可用来表示不同目标类型的对象操作。

Lambda表达式在平行设计的时候,能够进行并行处理。

使用Stream进行管道操作:

绝大多数的Stream并不需要呼叫close()方法,JDK8中要close()的是Files.lines()、Files.list()与Files.walk()方法。

格林威治标准时间(GMT),现已不作为标准时间使用,即使标注为GMT(格林威治时间),实际上谈到的的是UTC(Unix时间)时间。

在1972年引入UTC之前,GMT与UT是相同的。

世界协调时间(UTC),UTC考虑了地球自转越来越慢而有闰秒修正,确保UTC与UT相差不会超过0.9秒。

就目前来说,即使标注为GMT(无论是文件说明,或者是API的日期时间字符串描述),实际上谈到时间指的是UTC时间。

儒略历:修正了罗马历隔三年设置一闰年的错误,改采四年一闰。

格里高利历:改革了儒略历。

ISO 8601标准:采用统一的数据格式。

每个地区的标准时间各不相同,涉及到地理、法律、经济、社会、政治等问题。

考虑了UTC偏移的时间表示上,通常会标识Z符号。

有些高纬度国家,夏季、冬季日照时间差异很大,实施日光节约时间。

Date:取得系统时间,方法之一就是使用System.currentTimeMillis()方法,返回long类型整数,代表1970年1月1日0时0分0秒0毫秒至今经过的毫秒数。

新时间日期处理API的主要套件命名为java.time。对于机器相关的时间概念,设计了Instant类,用以代表自定义的Java epoch之后的某个时间点经历的毫秒数,精确度基本上是毫秒,但可添加柰秒精度的修正数值。

人类时间观点API,LocalDateTime(包括日期与时间)、LocalDate(只有日期)、LocalTime(只有时间),如果需要时区,可以基于LocalDateTime、LocalDate、LocalTime等来补充。

机器时间观点的API。

字串时间格式的处理,职责落到了java.text.DateFormat身上,其操作类别java.text.SimpleDateFormat,可以直接建构SimpleDateFormat实例,或使用DateFormat的getDateInstance()、getTimeInstance()、getDateTimeInstance()等静态方法。

直接构建SimpleDateFormat的好处是,可使用模式字符串自定义格式。

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

若需要时区信息,可基于上述三个时间描述的ZoneDateTime和OffsetDateTIme。

想要取得系统时间,方法之一是使用System.currentTimeMillis()方法

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

这周学习了十二章和十三章,又学到了很多知识,需要好好消化,多练习。

代码托管截图:



学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行30篇400小时
第一周100/1002/210/10初步认识java
第二周150/2501/312/22掌握Java基础语法
第三周537/7872/420/42认识对象,对象封装
第四周500/12871/520/62继承与多态,接口与多态
第五周300/15871/620/82
第六周300/18872/820/82
第六周200/20872/1020/82

参考资料

Java学习笔记(第8版)

《Java学习笔记(第8版)》学习指导
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: