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

教材学习内容总结

了解NIO

NIO使用频道(Channel)来衔接数据节点,在处理数据时,NIO可以让你设定缓冲区(Buffer)容量,在缓冲区中对感兴趣的数据区块进行标记,像是标记读取位置、数据有效位置,对于这些区块标记,提供了clear()、rewind()、flip()、compact()等高级操作。

会使用Channel、Buffer与NIO2

1.Handler负责日志输出,标准API提供了几个操作类:

·MemoryHandler不会格式化日志信息,信息会暂存于内存缓冲区,直至超过大小才将信息输出至指定的目标Handler。

·StreamHandler可自行指定信息输出时使用的OutputStream。

·ConsoleHandler创建时,会自动指定OutputStream为System.err。

·SocketHandler创建时可以指定主机位置与端口。

2.Logger可以使用addHandler()新增Handler实例,使用removeHandler()移除Handler。

3.在建立FileHandler指定模式字符串时,可以使用“%h”来表示用户的根目录,还可以使用“%t”取得系统暂存目录,或者使用“%g”自动为文档编号。

4.Handler是负责输出,Formatter负责格式化,而信息过滤是交由Filter。

5.Logger与Handler默认只会根据层级过滤信息。

会使用日志API、国际化

  • 1、日志工具类(logger):通常,大部分的日志框架都会定义一个主要的日志输出的工具类,开发者只需要声明该类,即可实现大部分的日志输出操作
    2、日志输出级别(Level):日志输出的级别,意味着该日志的重要程度,大部分的日志框架的级别会分为:Debug(调试模式),Info,warn,error,fatal,其中,根据级别的大小排序,debug>info>warn>error>fatal。级别的大小,将会影响日志的输出,将级别设置的越高,输出的信息将会越多
    3、日志输出格式(format):日志输出的格式,通常可以进行自定义,通过自定义的格式,输出的详细效果将不同
    4、日志输出的方式:即将日志输出到哪?常见的输出方式包括如:控制台,文本文件,数据库等
    5、日志分割:日志文件若以文件的方式进行输出的话,会存在文件大小问题,所以需要对日志进行分割,分割的方式可以分为按大小,按日期等。
  • 在不修改应用程序情况下,根据不同用户直接采用不同语言、日期格式等,这样的设计考虑称为国际化,简称i18n。

了解JDK8增强功能

  • 在JDK8中,String新增了join()静态方法可以直接指定每个字符串间以逗号分隔进行连接。

  • JDK8中,针对大型数组的平行化操作,在Arrays上新增了parallelPrefix()、parallelSetAll()与parallelSort()方法,parallelSort()方法。

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

代码调试中的问题和解决过程

代码托管(statistics.sh脚本的运行结果截图)

上周考试错题总结-

  • 下面哪些Linux 命令可以ASCII码和16进制单字节方法输出Hello.java的内容?

A .od -b -tx1 Hello.java

B .od -tcx1 Hello.java

C .od -tc -tx1 Hello.java

D .od -tbx1 Hello.java

  • vi中哪条命令是不保存强制退出?

A .
:wq
B .
:wq!
C .
:q!
D .
:q

正确答案:C

结对及互评

评分标准

1.正确使用Markdown语法(加1分): -
不使用Markdown不加分 - 有语法错误的不加分(链接打不开,表格不对,列表不正确...) - 排版混乱的不加分

  1. 模板中的要素齐全(加1分) - 缺少“教材学习中的问题和解决过程”的不加分 - 缺少“代码调试中的问题和解决过程”的不加分 - 代码托管不能打开的不加分 - 缺少“结对及互评”的不能打开的不加分 - 缺少“上周考试错题总结”的不能加分 - 缺少“进度条”的不能加分 - 缺少“参考资料”的不能加分
  2. 教材学习中的问题和解决过程, 一个问题加1分
  3. 代码调试中的问题和解决过程, 一个问题加1分
  4. 本周有效代码超过300分行的(加2分) - 一周提交次数少于20次的不加分
  5. 其他加分: - 周五前发博客的加1分 - 感想,体会不假大空的加1分 - 排版精美的加一分 - 进度条中记录学习时间与改进情况的加1分 - 有动手写新代码的加1分 - 课后选择题有验证的加1分 - 代码Commit Message规范的加1分 - 错题学习深入的加1分 - 点评认真,能指出博客和代码中的问题的加1分 - 结对学习情况真实可信的加1分
  6. 扣分: - 有抄袭的扣至0分 - 代码作弊的扣至0分 - 迟交作业的扣至0分

点评模板:

  • 博客中值得学习的或问题: - xxx - xxx - ...
  • 代码中值得学习的或问题: - xxx - xxx - ...- 基于评分标准,我给本博客打分:XX分。得分情况如下:xxx- 参考示例

    点评过的同学博客和代码

  • 本周结对学习情况
  • 20166329
  • 结对照片

  • 结对学习内容
    依据课程指导互相交流。
  • 上周博客互评情况
    20155319
    20155204
    20155201
    20155224
    20155117

学习进度条

| | 代码行数(新增/累积)| 博客量(新增/累积)|学习时间(新增/累积)|重要成长|| -------- | :----------------:|:----------------:|:---------------: |:-----:|| 目标 | 5000行 | 30篇 | 400小时 | || 第一周 | 200/200 | 2/2 | 20/20 | || 第二周 | 300/500 | 2/4 | 18/38 | || 第三周 | 500/1000 | 3/7 | 22/60 | || 第四周 | 300/1300 | 2/9 | 30/90 | |

参考资料

# 20155327 2016-2017-4 《Java程序设计》第8周学习总结的更多相关文章

  1. 20155327 2017-2018-2 《Java程序设计》第一周学习总结

    20155327 2017-2018-2 <Java程序设计>第一周学习总结 教材学习内容总结 三大平台: 1.Java SE:JVM,JRE,JDK,java语言 JVM:Java虚拟机 ...

  2. 20155327 2016-2017-2 《Java程序设计》第一周学习总结

    20155327 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 浏览教材,根据自己的理解每章提出一个问题 1.JAVA SE中JVM,JRE与JDK分别是什 ...

  3. 20155304 2016-2017-2 《Java程序设计》第九周学习总结

    20155304 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC ...

  4. 20155330 2016-2017-2 《Java程序设计》第九周学习总结

    20155330 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 学习目标 了解JDBC架构 掌握JDBC架构 掌握反射与ClassLoader 了解自定义泛 ...

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. Frame 框架的创建

    Qt 创建Frame框架的例子: QFrame * frm = new QFrame(this); //创建一个框架 frm->setFrameStyle(QFrame::StyledPanel ...

  2. B树、B+树、二叉树、红黑树

    B树下面来具体介绍一下B-树(Balance Tree),一个m阶的B树具有如下几个特征:1.根结点至少有两个子女.2.每个中间节点都包含k-1个元素和k个孩子,其中 m/2 <= k < ...

  3. 1 :2 Strust2—Demo

    =============================================================== Demo基础包:

  4. 32Sql数据库的插入

    上一节讲了数据库的连接,本例直接将数据库的插入操作,重点还是QSqlQuery类 QSqlQuery query; //新建二维表 query.exec("CREATE TABLE stud ...

  5. HDU - 2844 Coins(多重背包+完全背包)

    题意 给n个币的价值和其数量,问能组合成\(1-m\)中多少个不同的值. 分析 对\(c[i]*a[i]>=m\)的币,相当于完全背包:\(c[i]*a[i]<m\)的币则是多重背包,考虑 ...

  6. 20155331 2016-2017-2 《Java程序设计》第8周学习总结

    20155331 2016-2017-2 <Java程序设计>第8周学习总结 教材学习内容总结 NIO与NIO2 NIO使用频道(channel)来衔接数据节点,对数据区的标记提供了cle ...

  7. Python的星号(*)和双星号(**)用法

    ①引言 在Python中,星号除了用于乘法数值运算和幂运算外,还有一种特殊的用法是在变量前加单个星号或两个星号,实现多参数的传人或变量的拆解. ②什么是星号变量 最初,星号变量是用在函数的参数传递上的 ...

  8. Python3.x:os.mkdir与 os.makedirs(创建目录方法)区别

    Python3.x:os.mkdir与 os.makedirs区别 1,os.mkdir mkdir( path [,mode] ) 说明: 创建一个目录,可以是相对或者绝对路径,mode的默认模式是 ...

  9. 20145307陈俊达《网络对抗》shellcode注入&return to libc

    20145307陈俊达<网络对抗>shellcode注入 Shellcode注入 基础知识 Shellcode实际是一段代码,但却作为数据发送给受攻击服务器,将代码存储到对方的堆栈中,并将 ...

  10. HYSBZ 1036 树的统计Count(树链剖分)题解

    思路: 树链剖分,不知道说什么...我连模板都不会用 代码: #include<map> #include<ctime> #include<cmath> #incl ...