20155234 2016-2017-2 《Java程序设计》第7周学习总结

教材学习内容总结

第十二章 Lambda

Lambda表达式会使程序更加地简洁,在平行设计的时候,能够进行并行处理。

第十三章 时间与日期

13.1Time&&Date

13.1.1时间的度量

1、Greenwich Mean Time(格林威治时间)简称GMT时间 观察太阳得来
2、Universal Time(世界时)UT
3、International Atomic Time(国际原子时)TAI
4、Coordinated Universal Time(世界协调时间) UTC
5、Unix时间 以1970年1月1日00:00:00为起点
6、epoch
目前实际上指的时间是UTC时间

13.1.2年历

1、Julian Calendar(儒略历)四年一闰
2、Gergorian Calendar(格里高利历)
3、ISO 8601标准

13.1.3Time Zones(时区)

一年的毫秒数不是简单的3652460601000

13.2Date&&Calendar

13.2.1Date

使用Date实例的各getTime可以获得epoch毫秒数,**Data实例只用来当做时间轴上的某一瞬间

13.2.2DataFormat(格式化时间日期)

利用DataFormat可以对字符串格式进行处理,分别有GetDateInstance、GetTimeInstance、GetDateTimeInstance直接构建SimpleDateFormat,可以自定义字符串格式 parse方法可以将指定的字符串剖析Date实例。

13.2.4TimeZone

TimeZone的getdefault可以取得默认时区的信息

13.3新时间日期API

13.3.1机器时间观点

Date实例只代表机器观点的时间信息

13.3.2人类时间观点

LockalDateTime、LocalDate、LocalTime是没有时区信息的
在上面那些类的基础上可以使用ZonedDateTime等来进行补充
取得月份要通过getValue()方法,而不是使用oridinal()(从0开始)方法

13.3.3对时间的运算

使用Calendar可以进行时间运算,jdk8中也提供了更加方便的时间运算方法以及输出格式,操作相应的temporal类即可

13.3.4年历系统设计

java.time.chrono类中有相关的年历系统的类

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

Date实例只能用来当作时间轴上的某一个瞬间,需要进行转换,并且一年的时间并不是3652460601000,这里面还是有许多的不一样。机器时间和人类时间还是有不同,设计程序时要正确地使用,在人类时间观点上还要注意各种历法的不同以及时区的问题,要不然还是会有些不准确。

错题

错题1
Given an instance of a Stream, s, and a Collection, c, which are valid ways of creating a parallel stream? (Choose all that apply.)
给定一个Stream的实例s, 一个Collection的实例c, 下面哪些选项可以创建一个并行流?
A .new ParallelStream(s)
B .c.parallel()
C .s.parallelStream()
D .c.parallelStream()
E .new ParallelStream(c)
F .s.parallel()
答案:DF
解析:D,F.没有ParallelStream等类,所以A和E是不正确的。流类中定义的方法来创建一个 parallel stream 从现有parallel(); ;因此C是正确的,F是不正确的。集合类中定义的方法来创建一个parallel stream 从收集parallelStream();因此D是正确的,B错误的。
错题2
Which of the following statements about the Callable call() and Runnable run() methods are correct? (Choose all that apply.)
A .Both can throw unchecked exceptions.
B .Callable takes a generic method argument.
C .Callable can throw a checked exception.
D .Both can be implemented with lambda expressions.
E .Runnable returns a generic type.
F .Callable returns a generic type.
G .Both methods return void
答案:A C D F
错题3
What are some reasons to use a character stream, such as Reader/Writer, over a byte stream, such as InputStream/OutputStream? (Choose all that apply.)
A .More convenient code syntax when working with String data
B .Improved performance
C .Automatic character encoding
D .Built-in serialization and deserialization
E .Character streams are high-level streams
F .Multi-threading support
答案:AC
错题4
Assuming zoo-data.txt is a multiline text file, what is true of the following method?
private void echo() throws IOException {
try (FileReader fileReader = new FileReader("zoo-data.txt");
BufferedReader bufferedReader = new BufferedReader(fileReader)) {
System.out.println(bufferedReader.readLine());
}
}
A .It prints the first line of the file to the console.
B .It prints the entire contents of the file.
C .The code does not compile because the reader is not closed.
D .The code does compile, but the reader is not closed.
E .The code does not compile for another reason.
答案:A
解析:这段代码编译和运行没有问题,所以C和E是不正确的。它使用一个来try-with- resource打开FileReader和BufferedReader对象。因此,自动关闭,D是不正确的。的主体try块读入文件的第一行和输出给用户。因此,A是正确的。因为其余的文件不读,B是不正确的。
错题5
Which of the following are true? (Choose all that apply.)
A .A new Console object is created every time System.console() is called.
B .Console can only be used for reading input and not writing output.
C .Console is obtained using the singleton pattern.
D .When getting a Console object, it might be null.
E .When getting a Console object, it will never be null.
答案:CD
解析:一个控制台JVM创建对象。因为只有一个存在,它是一个单例,mak - ing选项C正确的。如果程序运行的环境中没有一个控制台,系统。控制台()返回null,D也正确。其他报表控制台是不正确的。

代码托管

结对及互评

结对搭档

  • 20155226基于评分标准,我给本博客打分:(10)。得分情况如下:
  1. 正确使用Markdown语法(加1分)
  2. 模板中的要素齐全(加1分)
  3. 排版精美的加一分
  4. 代码Commit Message规范的加1分
  5. 进度条中记录学习时间与改进情况的加1分
  6. 感想,体会不假大空的加1分
  7. 教材学习中的问题和解决过程。
  8. 动手写新代码的加1分
    9.代码超过300行加2分

    上周点评博客

  • 20155320
  • 20155233
  • 20155214
  • 20155334
  • 20155329

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

    这周的学习内容主要是时间和日期,其实java就有这样的一些类,操作这些类就可以表示出相应的时间以及进行时间的一些输出格式的表示,还有就是对时间进行运算,最关键的就是善于利用API帮助文档,在需要的时候能够灵活地使用这些类。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积)
    目标 5000行 30篇
    第一周 3/3 1/1
    第二周 105/108 1/2
    第三周 205/313 1/3
    第四周 402/710 1/4
    第五周 327/1037 1/5
    第六周 900 /1937 1/6
    第七周 631/2568 2/8

    参考资料

  • Java学习笔记(第8版)
  • 《Java学习笔记(第8版)》学习指导

20155234 2016-2017-2 《Java程序设计》第7周学习总结的更多相关文章

  1. 20155336 2016-2017-2《JAVA程序设计》第九周学习总结

    20155336 2016-2017-2<JAVA程序设计>第九周学习总结 教材学习内容总结 第十六章 JDBC(Java DataBase Connectivity)即java数据库连接 ...

  2. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  3. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  4. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  5. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  6. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  7. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  8. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  9. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  10. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

随机推荐

  1. numpy meshgrid 和 mgrid 的两个简单实例和解析

    numpy.meshgrid 和 numpy.mgrid 用于返回包含坐标向量的坐标矩阵. 当坐标矩阵为二维时, 可用于在图像变形时构建网格. 实例一 from __future__ import p ...

  2. LeetCode题解之Add two numbers

    1.题目描述 2.题目描述 题目思路可以参考合并单链表的思路,定义一个全局 进位标志,如果两个数值相加得到需要进位,则将进位标志置为1 . 3.代码 ListNode* addTwoNumbers(L ...

  3. .NET版UEditor报请求后台配置项http错误,上传功能无法使用的错误解决

    在配置UEditor的时候,总是报请求后台配置项http错误,上传功能将不能正常使用!,上传图片等功能都无法使用.折磨了一下午,逐步调试发现了错误原因:

  4. Two tomcat 冲突

    一.一般修改 路径: /opt/apache-tomcat/conf/server.xml 1.第一个tomcat使用默认配置 2.第二个tomcat一般配置 二.特殊修改 1.第二个tomcat特殊 ...

  5. Windows2003系统取消关机提示的方法

    方法有两种:1.编辑组策略 打开“开始”-“运行”,在“打开”一栏中输入“gpedit.msc”命令打开组策略编辑器,依次展开“计算机配置”→“管理模板”→“系统”,双击右侧窗口出现的“显示‘关闭事件 ...

  6. Oracle EBS AR 更新客户配置文件

    DECLARE l_rec_profile_t hz_customer_profile_v2pub.customer_profile_rec_type; l_rec_profile hz_custom ...

  7. LocationCoder 地图经纬度解析

    LocationCoder 地图经纬度解析 其实,在地图里面将地图解析成有意义的地址,或者把地址转换成有意义的经纬度都是很容易的事情,只是我将其封装了支持KVO,通知中心,block取结果,代理取结果 ...

  8. UNIX高级环境编程(6)标准IO函数库 - 流的概念和操作

    标准IO函数库隐藏了buffer大小和分配的细节,使得我们可以不用关心预分配的内存大小是否正确的问题. 虽然这使得这个函数库很容易用,但是如果我们对函数的原理不熟悉的话,也容易遇到很多问题.   1 ...

  9. 关于 svn

    文章:http://www.cnblogs.com/xing901022/p/4403339.html 视频http://www.imooc.com/learn/109        7******* ...

  10. pathlib

    导入Path类 from pathlib import Path 创建Path对象 p = Path('C:\Windows\System32') # 用C:\Windows\System32创建Pa ...