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

教材学习内容总结

第14章

  • Channel是Java NIO用来衔接数据节点的功能,可定义缓冲区容量、标记内容。对于缓冲区的被标记内容,Channel提供clear()、rewind()、flip()、compact()等高级方法来给用户进行操作。
  • Channel类定义了静态方法newChannel(),可以在InputStream和OutputStream分别建立ReadableByteChannel和WritableByteChannel;当然,有些I/O实例本身就可以取得Channel实例。
  • Buffer的直接子类都有allocate()静态方法,可以供用户指定Buffer的容量。
  • Buffer的容量可以经由capacity()方法获得,用户装填的数据不会超过超过容量。
  • 实际可读取或写入的数据边界索引值可有limit()方法获取或定义。
  • NIO2文件系统API提供一组标准接口与类,开发人员只要基于这些标准接口与类进行文件系统操作,而底层文件的操作由厂商负责。

第15章

  • java.util.logging包提供了日志功能想换类与接口,不需额外配置日志组件。
  • getlogger()调用时,必须指定Logger实例所属名称空间,名称空间以“.”作为层级区分;名称空间层级相同的Logger,其父Logger组态相同。
  • 调用log()方法,系统首先会从Level过滤信息,再看Logger有无Filter接口实例。
  • Logger组态通过logging.properties来设定,启动JVM时,指定java.util.logging.config.file系统属性为.properties名称。
  • 应用程序根据不同地区用户,呈现不同语言、日期格式等成为本地化。
  • 若应用程序设计时,可以在不修改程序的前提下自动根据不同用户直接采用不同语言、日期格式等成为国际化。
  • 国际化的重要概念是地区信息、资源包与基础名称。
  • 获取信息文档的途径:使用指定的Locale对象获取、使用Locale.getDefault()取得的对象获取、使用基础名称获取。

 正则表达式(规则表达式)

- 正则表达式和正则二叉树毫无联系(我还以为这是用来计算的)。
- 正则表达式用于查找\替换目标字符。
- Windows系统下和Linux系统下的正则表达式启动方式有所不同。
- 可以肯定,我电脑上的任意含有“编译/编辑”功能的程序都有正则引擎。

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

  • 问题1:同时开启虚拟机和非虚拟机程序会引起电脑的不定时死机。
  • 问题1解决方案:最初的想法是宿主机有病毒,遂杀毒,但是此举只是拖延了死机的到来。
    后来认为,同时启动虚拟机和宿主机的程序会引起程序间的内存抢占竞争,遂强制关闭部分后台程序。但是还是会在宿主机和虚拟机同时有上网的行为后出现死机。
    已经请教高手,正在等待答复。

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

  • Null

代码托管

(statistics.sh脚本的运行结果截图)

上周考试错题总结

  • 错题1及原因,理解情况
    A method that has multiple definitions is an __________________ method(具有多重定义的方法称为方法___).
    A .
    overloaded(重载)
    B .
    overridden(重写)
    C .
    overlooked(忽略)
    D .
    overclocked(超频)
    E .
    none of the above(以上均不是)
    正确:A;我选:B
    原因:将overriden与override混淆。
  • 错题2及原因,理解情况
    What is the output of the following code?(下面代码的运行结果是?)
    LocalDate date = LocalDate.of(2018, Month.APRIL, 40);
    System.out.println(date.getYear() + " " + date.getMonth()
  • " "+ date.getDayOfMonth());

A .
2018 APRIL 4
B .
2018 APRIL 30
C .
2018 MAY 10
D .
Another date
E .
The code does not compile.
F .
A runtime exception is thrown.
正确:F;我选:C
原因:误认为Java会自动将多余天数计入下一月。

结对及互评

评分标准

  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分

点评模板:

  • 博客中值得学习的或问题:

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

点评过的同学博客和代码

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 27/27 1/1 18/18
第二周 57/97 1/2 24/42
第三周 220/284 1/3 36/78 函数封装还学不会
第四周 408/692 1/4 44/122 知道怎么封装函数了;分得清继承和接口。
第五周 410/1102 1/5 40/162 没什么好疑惑的
第六周 390/1492 1/6 27/189
第七周 437/1929 2/8 38/228 我就知道Java不能调用中国农历,LOL!
第八周 305/2234 1/9 19/247 专注搞社团活动,抽不出太多时间写代码。

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

  • 计划学习时间:35小时

  • 实际学习时间:19小时

  • 改进情况:

(有空多看看现代软件工程 课件
软件工程师能力自我评价表
)

参考资料

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

  1. 20155223 2006-2007-2 《Java程序设计》第二周学习总结

    20155223 2006-2007-2 <Java程序设计>第二周学习总结 第三章内容总结 3.1 类型 正如我所预料的情况一样:Java脱胎于C语言,就一定会留有和C语言相近或相同的语 ...

  2. 20155223 2006-2007-2 《Java程序设计》第一周学习总结

    20155223 2006-2007-2 <Java程序设计>第一周学习总结 学习内容 提问 第三章:Java没有能够计算开根号的运算符,我遇到开根运算该怎么办? 第四章:Java有没有比 ...

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

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

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

    20155207 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立 ...

  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. lua实现单例模式

    Singleton = {} function Singleton:new(o) o = o or {} setmetatable(o,self) self.__index = self return ...

  2. A题:Common Substrings(KMP应用)

    原题链接 注意:2号和3号get_next()函数中next[i]赋值时的区别,一个是0,一个是1,且不能互换 #include<cstdio> #include<cstring&g ...

  3. 常用技巧之JS判断数组中某元素出现次数

    先上代码:function arrCheck(arr){  var newArr = [];  for(var i=0;i<arr.length;i++){    var temp=arr[i] ...

  4. 20145104张家明 《Java程序设计》第4周学习总结

    20145104张家明 <Java程序设计>第4周学习总结 教材学习内容总结 第六章 1.继承的定义及目的 面向对象中,子类继承父类,避免重复的行为定义.不过并非为了避免重复定义行为就使用 ...

  5. 辅助模块应用(auxiliary/scanner/portscan/tcp)

    实验步骤 创建msf所需的数据库 之前我们开启msf时下面总会出现一个红色的小减号,原来是因为没有和数据库键连接,于是首先我们要手动建立一个数据库... 使用命令来实现: service postgr ...

  6. pip安装tensorflow-gpu好慢怎么办

    答:为pip换源,如换成清华源 cat ~/.pip/pip.conf(没有此文件,自行创建即可,然后加入以下内容) [global]index-url = https://pypi.tuna.tsi ...

  7. What's the difference between SDK and Runtime in .NET Core?

    What's the difference between SDK and Runtime in .NET Core? Answer1 According to the .Net Core Guide ...

  8. 【Rpc】基于开源Dubbo分布式RPC服务框架的部署整合

    一.前言 Dubbo 作为SOA服务化治理方案的核心框架,用于提高业务逻辑的复用.整合.集中管理,具有极高的可靠性(HA)和伸缩性,被应用于阿里巴巴各成员站点,同时在包括JD.当当在内的众多互联网项目 ...

  9. Python学习札记(四十三) IO 3

    参考:操作文件和目录 NOTE: 1.Python内置的os模块可以直接调用操作系统提供的接口函数: 2.os.name 打印操作系统的名称:如果是posix,说明系统是Linux.Unix或Mac ...

  10. Jmeter界面总是有warning提示

    要用Jmeter测试服务器性能,发现GUI界面总是有warning提示: WARNING: Could not open/create prefs root node Software\JavaSof ...