20155204 2016-2017-2 《Java程序设计》第8周学习总结
学号 2016-2017-2 《Java程序设计》第X周学习总结
教材学习内容总结
- 想要取得channel的操作对象,可以使用channels类,它定义了静态方法newChannel()。
- Buffer的直接子类们都有一个alloocate()方法,可以让你指定Buffer容量。
- 1.java.util.logging包提供了日志功能相关类与接口,使用日志的起点是logger类,Logger类的构造函数标示为protected,不是java.util.logging同包的类不能直接以new创建,必许使用Logger的静态方法,如:Logger logger = Logger.getLogger("cc.openhome.Main")。
- 取得Logger的方式:Logger logger = Logger.getLogger("Main.class.getName")。
- 名称空间层级相同的Logger,父Logger组态会相同,每个Logger处理完自己的日志动作后,会向父Logger传播,让父Logger也可以处理日志。
- 在没有任何组态设定的情况下,默认取得的Logger实例,层级必须大于或等于Logger.GLOBAL-LOGGER-NAME名称空间logger实例设定的Level.INFO,才可能输出信息。
- Handler可通过setLevel()设定信息, 以下显示的信息不仅要将Logger的层级设定为Level.INFO,也要讲Handler的层级设定为Level.INFO。
- MemoryHandler不会格式化日志信息,信息会暂存于内存缓冲区,直至超过大小才将信息输出至指定的目标Handler。 在建立FileHandler指定模式字符串时,可以使用“%h”来表示用户的根目录,还可以使用“%t”取得系统暂存目录,或者使用“%g”自动为文档编号。
- 对于日后可能变动的文字信息,可以考虑将信息移至程序之外,使用ResourceBundle来做信息绑定。 .properties文档必须放置在CLASSPATH的路径设定下,文档中撰写的是键/值配对,之后在程序中可以使用键来取得配对。 ResourceBundle的静态getBundle()方法会取得一个ResourceBundle的实例,所给定的自变量名称是信息文档的主文件名,getBundle()会自动找到对应的.properties文档,取得ResourceBundle实例后,可以使用getString()指定键来取得。
- java.util.regex.Pattern实例是规则表示式在JVM中的代表对象,Pattern的构造函数被标示为private,必须通过Pattern的静态方法compile()来取得。 在取得Pattern的实例后,可以使用split()方法将指定字符串依规则表示式切割。
教材学习中的问题和解决过程
- 问题1:对比NIO和IO
- 解决方法:这篇文章从侧面给出了答案Java NIO怎么理解通道和非阻塞
- 问题2:javaNIO非堵塞技术使我们不必开多个线程死等,我有点无法理解。一般如果做普通IO通信,比方说Socket,那么我们会给每个Socket开启一个线程,这个线程的目的是让socket做Read()时不阻塞主线程对不对?那么NIO是否是不执行这个Read()操作,或者说,是让专门一个线程,定时对所有连接做一个Read()操作,然后马上关闭Read(),执行下一个?(此问题摘自关于NIO的一些疑问)
- 解决方法:传统阻塞式的连接方式是每个连接一个线程,当连接数较多的时候(如上千并发),线程的创建和切换所带来的开销就非常大了。 一种的解决方案就是无阻塞式的reactor模型(linux中的epoll):将所有连接放在一个线程中轮询,有读写事件的时候再执行相应的回调处理。这个主要是用在服务器端减少线程数的。 而对于客户端来说,如果socket连接不多的话,每个连接直接单独启动一个线程处理socket也是可行的。
代码调试中的问题和解决过程
代码托管
上周考试错题总结
- JDK8中的Lambda表达式有以下好处:
A .
消除重复性
B .
提高性能
C .
提高安全性
D .
改善可读性
正确答案:BD - JDK8 中新时间API中,用于度量时间的类有()
A .
Instant
B .
Duration
C .
Period
D .LocalDateTime
正确答案:BC - Java 8之前,对日期进行运算,使用()类。
A .
Date
B .
DateFormat
C .
Calendar
D .
SimpleDateFormat
正确答案:C new Date(System.currentTimeMillis( ))等价于new Date()
正确结对及互评
评分标准
- 正确使用Markdown语法(加1分):
- 不使用Markdown不加分
- 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
- 排版混乱的不加分
- 模板中的要素齐全(加1分)
- 缺少“教材学习中的问题和解决过程”的不加分
- 缺少“代码调试中的问题和解决过程”的不加分
- 代码托管不能打开的不加分
- 缺少“结对及互评”的不能打开的不加分
- 缺少“上周考试错题总结”的不能加分
- 缺少“进度条”的不能加分
- 缺少“参考资料”的不能加分
教材学习中的问题和解决过程, 一个问题加1分
代码调试中的问题和解决过程, 一个问题加1分
- 本周有效代码超过300分行的(加2分)
- 一周提交次数少于20次的不加分
- 其他加分:
- 周五前发博客的加1分
- 感想,体会不假大空的加1分
- 排版精美的加一分
- 进度条中记录学习时间与改进情况的加1分
- 有动手写新代码的加1分
- 课后选择题有验证的加1分
- 代码Commit Message规范的加1分
- 错题学习深入的加1分
- 点评认真,能指出博客和代码中的问题的加1分
- 结对学习情况真实可信的加1分
- 扣分:
- 有抄袭的扣至0分
- 代码作弊的扣至0分
- 迟交作业的扣至0分
点评模板:
- 博客中值得学习的或问题:
- xxx
- xxx
- ...
- 代码中值得学习的或问题:
- xxx
- xxx
- ...
基于评分标准,我给本博客打分:XX分。得分情况如下:xxx
参考示例
点评过的同学博客和代码
- 本周结对学习情况
- 20155203
- 上周博客互评情况
- 20155117王震宇
- 20155229付颖卓
- 20155201李卓雯
- 20155327李百乾
- 20155224聂小益
其他(感悟、思考等,可选)
这周的学习任务也相较原来有所减少,不过对于第15章感觉对编程没有太大的用处,就花在上面的时间不多。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 33/33 | 1/1 | 18/18 | |
第二周 | 124/157 | 2/2 | 16/34 | |
第三周 | 531/689 | 3/3 | 20/54 | |
第四周 | 550/1239 | 4/4 | 22/76 | |
第五周 | 847/2086 | 5/5 | 18/94 | |
第六周 | 1300/3386 | 6/6 | 20/114 | |
第七周 | 655/4041 | 7/7 | 16/130 | |
第八周 | 250/4291 | 8/8 | 15/145 | |
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
参考:软件工程软件的估计为什么这么难,软件工程 估计方法
计划学习时间:16小时
实际学习时间:15小时
改进情况:
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)
参考资料
Java学习笔记(第8版)
- 《Java学习笔记(第8版)》学习指导
- Java NIO怎么理解通道和非阻塞
关于NIO的一些疑问
转载于:https://www.cnblogs.com/20155204wh/p/6720305.html
20155204 2016-2017-2 《Java程序设计》第8周学习总结相关推荐
- 20175317 《Java程序设计》第一周学习总结
20175317 <Java程序设计>第一周学习总结 教材学习内容总结 本周学习了Java大致的开发步骤,完成了课件自带的习题. 学习了在windows与Linux系统下不同的编译方法,掌 ...
- 20155227 2016-2017-2 《Java程序设计》第九周学习总结
20155227 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 JDBC全名Java DataBase Connectivity,是java联 ...
- 20172318 2016-2017-2 《Java程序设计》第一周学习总结
20172318 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 在教材中基本明白了计算机系统的运行方式,了解了对于高级语言是使用是掌握好编程的关键,掌握了一 ...
- 20155303 2016-2017-2 《Java程序设计》第二周学习总结
20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...
- 20175208 《Java程序设计》第九周学习总结
20175208 2018-2019-2 <Java程序设计>第九周学习总结 一.教材学习内容总结: 第11章 JDBC与MySQL数据库 MySQL数据库管理系统 MySQL数据库管理系 ...
- 20175204 张湲祯 2018-2019-2《Java程序设计》第九周学习总结
20175204 张湲祯 2018-2019-2<Java程序设计>第九周学习总结 教材学习内容总结 -第十一章JDBC和MySQL数据库要点: 1.下载MySQL和客户端管理工具navi ...
- 20155313 2016-2017-2 《Java程序设计》第二周学习总结
20155313 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 1.1 基本类型 整数:可细分为short整数(占2字节).int整数(占4字节)与long ...
- 20155226 2016-2017-2 《Java程序设计》第一周学习总结
20155226 2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 第一周主要学习了一二章的内容,也浏览了剩余章节,以下是本周主要学习内容总结 1.首先了解了[ ...
- 20172325 2018-2019-1 《Java程序设计》第二周学习总结
20172325 2018-2019-1 <Java程序设计>第二周学习总结 教材学习内容总结 3.1集合 集合是一种聚集.组织了其他对象的对象.集合可以分为两大类:线性集合和非线性集合. ...
- 张旭升20162329 2006-2007-2 《Java程序设计》第一周学习总结
20162329 2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 通过打书上的代码熟悉了Java编程的基本过程 教材学习中的问题和解决过程 1.因为我的虚拟机 ...
最新文章
- VGG卷积神经网络模型加载与运行
- 查看linux是多少位的
- RocketMQ 4.5.1 双主双从异步复制环境搭建
- SQLSTATE[42S22]: Column not found: 1054 Unknown column 'tbl_contact' in 'where clause'.
- Windows XP SP3 最终发布日期公布
- 【渝粤教育】国家开放大学2018年秋季 2711T花卉栽培技术 参考试题
- html提交表单使用python计算_使用Python计算股票期货,量化程序化交易
- scala练习——fold函数
- webstorm自定义文件模板
- [墨者学院] 日志文件分析溯源(脱裤的IP地址)
- win7不能开启无线服务器,Win7建立无线Wi-Fi热点及常见问题解决办法——无线路由器功能实现...
- 无功控制器电容投切方案整理
- 最新notion enhancer安装教程(macOS Intel适用)
- 清华大学计算机王佳希,【旧文】北大清华2012年拟录取保送生名单及简析(北京市)...
- 【云栖大会】阿里巴巴成立“达摩院” 引入顶尖科学家3年研发投入将超千亿
- 【JZOJ4920】降雷皇
- oracle_sod,sod
- WHUT·PTA·实验一 (个人整理+理解版 )
- Python模块——base64
- Java学习路线总结(2022版)
热门文章
- 【python 7】OpenCV
- pytorch机器学习_机器学习— PyTorch
- 菜品三级分类_分类器的惊人替代品
- 电商迅猛发展是利大于弊,还是弊大于利?
- 监管升级,央行变相加息,贷款难还在继续
- 达内软件测试证书是什么证书,达内软件测试培训让我拥有了实际工作经验
- gc java root_聊聊Java的GC机制
- python系统自学_如何系统地自学python
- python测试用例管理_Python测试框架Pytest的常用插件测试报告
- php 获取文件大小 修改时建,php遍历目录输出文件大小,类型,修改时间.