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

教材学习内容总结

第十四章 NIO与NIO2

  • NIO(New IO)-from JDK1.4
  • NIO2 -from Java SE 7

    14.1 认识NIO
  • Channel: 衔接数据节点(与IO中的流对比)
  • isOpen
  • close
  • ReadableByteChannel
  • read
  • WritableByteChannel
  • write
  • Buffer: 块操作
  • clear
  • flip
  • rewind
  • mark
  • reset
  • remaining

    14.2 NIO2文件系统
  • java。nio.file
  • FileSystems
  • Paths
  • Files
  • java.nio.file.atribute
  • java.nio.file.spi
  • FileSystemProvider

    第十五章 通用API

    15.1 通用API
  • 日志:日志对信息安全意义重大,审计、取证、入侵检测等都会用到日志信息
  • 日志API
  • Logger: 注意无法使用构造方法生成Logger对象
  • Logger logger = Logger.getLogger("xxx");
  • getLevel
  • setLevel
  • Level
  • Handler:输出介质
  • MemoryHandler
  • StreamHandler
  • ConsoleHandler: SimpleFormatter
  • FileHandler:XMLFormatter
  • SocketHandler
  • Formatter: 格式化

    Filter: 过滤

    15.2 国际化基础
  • Localization 本地化;Internationalization(i18n)国际化
  • ResourceBundle
  • Locale

    15.3 正则表达式
  • 正则表达式简介
  • 字符与元字符
  • 字符类
  • 贪婪、非贪婪、独占量词
  • 边界比较
  • 锚点
  • 分组与反向引用
  • Pattern/Matcher

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

  • 问题1:p451 NIOUtil.java: Channel

    index.html存在哪了?打开看看内容对不对?
  • 问题1解决方案:存在于



    打开内容为:

  • 问题2:在规则表示式中,自面意义字符的表示,对于所列出的常用字面意义字符有点问题,看书上的例子,用split()方法切割。
  • 问题2解决方案:
for(String token:"Justin\\Moinca\\Irene".split("\\\\")
{
out.println(token);
}
  • 问题3:p491 PatternMatcherDemo.java

    out.printf("%s find ", pattern.pattern())的作用?

  • 问题3解决方案:用find将前后分开

  • 问题4:p483 SplitDemo.java:修改代码,字符串改成csv,怎么分隔?

  • 问题4解决方案:修改代码段如下:

for (String token:"csv".split("")){
System.out.println(token);
}

结果

  • 问题5:p483 SplitDemo.java: 这个程序的功能用C语言怎么实现?
  • 问题5解决方案:
s[]={...};
l=strlen(s);
for(i=0;i<l;i++){
if(s[i]="分割条件")
printf("\n");
else
printf("%s",s[i]);
}

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

无问题

代码托管

上周考试错题总结

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

A .:wq

B .:wq!

C .:q!

D .:q

  • 理解情况 C.:wq 是保存退出。 !表示强制。
  • 错题2:hen applied to instance variables, the ________________ visibility modifier enforces encapsulation(当应用到实例变量时,____可见性修饰符强制执行封装).

A .static

B .final

C .public

D .private

E .none of the above(以上都不是)

  • 理解情况 :D.The private visibility modifier guards against inappropriate data access, and therefore promotes encapsulation. Choices a and b are not visibility modifiers, and choice c is a visibility modifier that allows public access to an objects data, which violates the principle of encapsulation.
  • 错题3:Given the following, which answers can correctly fill in the blank? (Choose all that apply.)针对下面的代码,()中应填入哪个选项?

    LocalDate date = LocalDate.now();

    LocalTime time = LocalTime.now();

    LocalDateTime dateTime = LocalDateTime.now();

    ZoneId zoneId = ZoneId.systemDefault();

    ZonedDateTime zonedDateTime = ZonedDateTime.of(dateTime, zoneId);

    long epochSeconds = 0;

    Instant instant = ( );

A .Instant.now()

B .Instant.ofEpochSecond(epochSeconds)

C .date.toInstant()

D .dateTime.toInstant()

E .time.toInstant()

F .zonedDateTime.toInstant()

  • 理解情况 :F.Option A correctly creates the current instant. Option B correctly converts from

    seconds to an Instant. Option F is also a proper conversion. Options C, D, and E are

    incorrect because the source object does not represent a point in time. Without a time zone,

    Java doesn’t know what moment in time to use for the Instant.
  • 结对及互评

博客中值得学习的或问题:学习中的问题解决比较认真,调试过程中的问题有自己的思考的实践。

  • 代码中值得学习的或问题:代码比较精致。
  • 基于评分标准,我给本博客打分:15分。得分情况如下:

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

    模板中的要素齐全(加1分)

    教材学习中的问题和解决过程, (加3分)

    代码调试中的问题和解决过程, (加1分)

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

    其他加分:

    感想,体会不假大空的加1分

    排版精美的加1分

    进度条中记录学习时间与改进情况的加1分

    代码Commit Message规范的加1分

    错题学习深入的加1分

    点评认真,能指出博客和代码中的问题的加1分

    结对学习情况真实可信的加1分

参考示例

点评过的同学博客和代码

其他

  • 这周的学习比较轻松,我把之前的学习内容继续复习了一下,感觉收获良多。
  • 我感觉在某些方面的学习中,我还是有很多的不懂之处,但是通过蓝墨云的学习还有去上网找答案,都是学习的一个好方法。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20 安装软件
第二周 300/500 2/4 18/38 接触java的基础知识
第三周 500/1000 3/7 22/60 深入学习了java
第四周 300/1300 2/9 30/90 了解了继承与多态、接口与多态
第五周 400/1700 2/11 30/120 学会了异常处理及Collection与Map
第六周 400/2100 2/13 30/150 了解输入与输出 、线程与并行API
第七周 400/2500 4/17 30/180 认识时间与日期。学会了异常处理及Collection与Map
第八周 500/3000 2/19 20/200 通用API

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

参考资料 - Java学习笔记(第8版) - 《Java学习笔记(第8版)》学习指导 - ...

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

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

    20155333 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC(Java DataBase Connectivity) 驱动的四种类型 JDBC- ...

  2. 20155305乔磊2016-2017-2《Java程序设计》第九周学习总结

    20155305 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC入门 JDBC简介 1.JDBC是java联机数据库的标准规范,它定义了一组标准类与 ...

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

    20155331 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC是什么? JDBC代表Java数据库连接,这对Java编程语言和广泛的数据库之间独立 ...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. C#:进程、线程、应用程序域(AppDomain)与上下文分析

    进程     进程是操作系统用于隔离众多正在运行的应用程序的机制.在.Net之前,每一个应用程序被加载到单独的进程中,并为该进程指定私有的虚拟内存.进程不能直接访问物理内存,操作系统通过其它的处理把这 ...

  2. emacs之配置speedbar

    安装sr-speedbar,这样的话,speedbar就内嵌到emacs里面了 emacsConfig/speedbar-setting.el (require 'sr-speedbar) (setq ...

  3. vim配置之安装脚本

    vimConfig/install/install.sh git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle cp ...

  4. emacs之配置5,窗口位置和大小

    emacsConfig/window-setting.el ;设置窗口位置 ( ) ;设置宽和高 () (if (eq system-type 'darwin) ()) (if (eq system- ...

  5. 【推荐】开源来自百度商业前端数据可视化团队的超漂亮动态图表--ECharts

    本人项目中最近有需要图表的地方,偶然发现一款超级漂亮的动态图标js图表控件,分享给大家,觉得好用的就看一下.更多更漂亮的演示大家可以参考下面两个网址:ECharts官方网址:http://ecomfe ...

  6. Mysql中用between...and...查询日期时注意事项

    select count(1) from user where regist_date between '2017-07-25 00:00:00' and  '2017-07-25 24:00:00' ...

  7. Thinkphp 联表查询 表名要全名

    我有2个表 表1. 表2 已知表2的user_id 查询满足 表2.wb_id=表1.id 表1的内容 最佳答案 i 2013年11月15日 $result = M()->table(array ...

  8. 使用Java配置SpringMVC

    在此之前,一直使用的是XML的方式配置SpringMVC,现在为了适应Servlert3.0以及JavaConfig的Spring配置方式,在这里记录一下使用Java代码配置SpringMVC.首先, ...

  9. PyQt5系列教程(二)利用QtDesigner设计UI界面

    软硬件环境 OS X EI Capitan Python 3.5.1 PyQt 5.5.1 PyCharm 5.0.1 前言 在PyQt5系列教程的第一篇http://blog.csdn.net/dj ...

  10. 修改eclipse 代码字体大小以及文档字体大小

    1..点击[window]在弹出的窗口中选择[preferences] 2.在弹出窗口中找到依次点击General(常规)——Apprearance(外观)——Colors and Fonts(颜色和 ...