zoukankan      html  css  js  c++  java
  • 20155237 2016-2017-2 《Java程序设计》第7周学习总结

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

    教材学习内容总结

    认识Lambda语法

    • Lambda 教材的引入循序渐近、深入浅出
      • Lambda去重复,回忆DRY原则
      • Lambda表达式可读性更好
    • Arrays.sort
      • Comparator: 对比C语言中使用函数指针
      • 匿名类与多态
    • 方法引用
      • 新语法
      • 一条语句用Lambda表达式,多条语句用方法引用
    • 函数接口
      • @FunctionalInterface
      • 可引用的包括类的静态方法、成员方法、构造方法
    • 接口默认方法
      • 不能使用类的成员变量

    Functional与Stream API

    • 使用Optional代替null
    • 标准API的函数接口
      • Consumer:一个参数,无返回值
      • Function:一个参数,有返回值
      • Predicate:一个参数,有返回值,返回值必须是boolean类型的
      • Supplier:无参数,有返回值

    认识时间与日期

    • 时间的度量
      • 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毫秒数
        认识Date与Calendar
    • 时区
    • Date与DateFormat
      • Date只用来获取epoch毫秒数
      • DateFormat来格式化成人类理解的年月日时分秒
    • Calendar: 时间的运算
    • 机器时间 Instant

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

    • 问题1:add() 与 roll() 的区别
    • 问题1解决方案:取得add()实例后,用add()方法改变Calender时间,相当于进位加减法,而roll()是对日期中某一字段进行加减,也就是不进位加减法。
    • 问题2:ZonedDateTimeDemo.java程序运行结果中数字是什么意思?
    • 问题2解决方案:通过自主敲代码验证发现是机器运行起止的毫秒数。

    代码托管

    上周考试错题总结

    • 下面哪条命令可以把 f1.txt 复制为 f2.txt ?
      A .
      cp f1.txt f2.txt

      B .
      copy f1.txt f2.txt

      C .
      cat f1.txt > f2.tx

      D .
      cp f1.txt | f2.tx
      E .
      copy f1.txt | f2.tx
      答案:AC

    • 调用线程的interrupt()方法 ,会抛出()异常对象?
      A .
      IOException

      B .
      IllegalStateException

      C .
      RuntimeException

      D .
      InterruptedException

      E .
      SecurityException

    答案:DE

    • 定义新线程时,可以继承哪个类:Thread
    • 使线程进入阻塞状态:答案缺interrupt()
    • Which of the following are not java.io
      classes? (Choose all that apply.)

    A .BufferedReader

    B .BufferedWriter

    C .FileReader

    D .FileWriter

    E .PrintReader

    F .PrintWriter

    正确答案:E

    • 给定一个Stream的实例s,一个Collection的实例c, 下面哪些选项可以创建一个并行流?
      A .new ParallelStream(s)

    B .c.parallel()

    C .s.parallelStream()

    D .c.parallelStream()

    E .new ParallelStream(c)

    F .s.parallel()

    正确答案:D F

    • 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

    • 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

    结对及互评

    评分标准

    1. 正确使用Markdown语法(加1分):

      • 不使用Markdown不加分
      • 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
      • 排版混乱的不加分
    2. 模板中的要素齐全(加1分)

      • 缺少“教材学习中的问题和解决过程”的不加分
      • 缺少“代码调试中的问题和解决过程”的不加分
      • 代码托管不能打开的不加分
      • 缺少“结对及互评”的不能打开的不加分
      • 缺少“上周考试错题总结”的不能加分
      • 缺少“进度条”的不能加分
      • 缺少“参考资料”的不能加分
    3. 教材学习中的问题和解决过程, 一个问题加1分

    4. 代码调试中的问题和解决过程, 一个问题加1分

    5. 本周有效代码超过300分行的(加2分)

      • 一周提交次数少于20次的不加分
    6. 其他加分:

      • 周五前发博客的加1分
      • 感想,体会不假大空的加1分
      • 排版精美的加一分
      • 进度条中记录学习时间与改进情况的加1分
      • 有动手写新代码的加1分
      • 课后选择题有验证的加1分
      • 代码Commit Message规范的加1分
      • 错题学习深入的加1分
      • 点评认真,能指出博客和代码中的问题的加1分
      • 结对学习情况真实可信的加1分
    7. 扣分:

      • 有抄袭的扣至0分
      • 代码作弊的扣至0分
      • 迟交作业的扣至0分

    点评过的同学博客和代码

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

    这周的学习内容主要是时间和日期。还有就是对时间进行运算,最关键的就是善于利用API帮助文档,在需要的时候能够灵活地使用这些类。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积)
    目标 3000行 30篇 200小时
    第一周 5/5 1/1 10/10
    第二周 36/41 1/2 12/24
    第三周 271/312 1/3 20/44
    第四周 577/ 1/4 25/69
    第五周 520/889 1/5 25/94
    第六周 884/1773 1/6 20/114
    第七周 404/2177 2/8 10/124

    参考:软件工程软件的估计为什么这么难软件工程 估计方法(http://www.cnblogs.com/xinz/archive/2011/04/06/2007294.html)

    参考资料

  • 相关阅读:
    百度地图定位经纬度返回4.9E-324有关问题
    急!JDBC问题,发生通信错误。错误位置:Reply.fill()。消息:数据不足。 ERRORCODE=-4499, SQLSTATE=08001
    Android 图片添加水印图片或者文字
    查询出多条记录,取最大或最小的某条件的记录,取唯一记录
    listView获取item的Edit内容,listView中的edit内容在滚动时自动赋值了前面的内容
    ListView中的item的按照和item点击事件并存
    update select
    db2 怎么计算两个时间相差多少个月。如2015-10-10 和2014-1-12
    解决AndroidADT自带Eclipse编辑器不能自动代码提示的问题
    python协程详解,gevent asyncio
  • 原文地址:https://www.cnblogs.com/C-fzc/p/6685840.html
Copyright © 2011-2022 走看看