教材学习内容总结

  • try & catch

    • java中的错误会被打包成对象,可以尝试(try)捕捉(catch)代表错误的对象后做一些处理。如果发生错误,会跳到catch的区块并执行。
  • 异常结构处理
    • 正则表达式

      • 在看这部分内容的时候,看到了规则表示式一词。要不是还有英文Regular Expression注释根本记不起这就是正则表达式。没想到这么古老的直翻词语还能在新版的书上看到。前段时间还想起很久之前写过相关的程序用做过滤匹配文本,这可以用作检查代码,匹配一下文本就好了,毕竟每个人的代码风格还是区别挺大的;至于换行、注释这种低级的问题随便写个文本过滤就没了。但是难点是在文本搜索匹配的策略优化上,不注意的话时间复杂度高的惊人(废话)。懒得想数据结构和剪纸的方法也就懒得写那个小工具,如果有兴趣的同学能看到这篇没什么人看的博客有了灵感的话不胜荣幸,顺便能告诉我你想好的算法那就感激不尽了。
      • PS:千万不要想字符串匹配(诸如kmp)的算法,对于雷同问题的解决效率低,当然对付直接复制粘贴的懒人来说还是有用的。
  • 多重捕捉

    下面两段代码功能相同。
try{
System.in.read();
}catch (IOException ex){
ex.printStackTrace();
}catch (Exception ex){
ex.printStackTrace();
}
try{
System.in.read();
}catch (IOException |Exception ex){
ex.printStackTrace();
}
  • throw

    • 任何流程中都可以throw(不是throws),不一定要在catch区块里。但需要在方法上使用throws(不是throw)声明。
  • assert

  • assert 语法:

assert boolean_expression;
assert boolean_expression : detail_expression;
•boolean_expression 若为 true,则什么事都不会发生,如果为 false,则会发生 java.lang.AssertionError,此时若采取的是第二个语法,则会将 detail_expression 的结果显示出来,如果当中是个对象,则调用 toString() 显示文字描述结果
  • 断言

    • 使用时注意断言客户端调用方法前,已经准备好某些前置条件(通常在private方法之中)
    • 断言客户端调用方法后,具有方法承诺的结果。
    • 断言对象某个时间点下的状态。
    • 使用断言取代批注。
    • 断言程序流程中绝对不会执行到的程序代码部分。
    • checkGreaterThanZero() 是一种前置条件检查,如果程序上线后就不再需要这种检查的话,可以将之以 assert取代,并在开发阶段使用 -ea 选项,而程序上线后取消该选项
    • 使用断言的时机:一定不能有 default 的状况,也可以使用 assert 来取代
  • 使用Collection收集对象

    - 收集对象的行为,像是新增对象的 add()方法、移除对象的remove()方法等,都是定义在 java.util.Collection中

- 既然可以收集对象,也要能逐一取得对象,这就是java.lang.Iterable定义的行为,它定义了iterator()方法返回 java.lang.Iterable操作对象,可以让你逐一取得收集的对象

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

操作comparable

按照教材的指示,我出现了和教材一样的错误。



发现所谓的comparable就是C语言中qsort()函数需要自己写的comp()比较原则函数。



类比qsort()比较原则的编写经验,写出了这里排序的comparable

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

问题一:习惯用-1代表弹出标志,结果没注意正则表达式规范导致不能正常终止程序。



问题二:调用toUpperCase()引发NullPointerException。

代码托管

结对及互评

基于评分标准,我给本博客打分:10

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 0/0 2/2 20/20
第二周 251/251 1/5 18/38
第三周 651/902 1/6 10/48
第四周 300/1400 1/7 10/58
第四周 696/2196 1/8 10/68

参考资料

20155117王震宇 2006-2007-2 《Java程序设计》第5周学习总结的更多相关文章

  1. 20155117王震宇 2006-2007-2 《Java程序设计》第一周学习总结

    20155117王震宇 2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 尽量简单的总结一下本周学习内容 尽量不要抄书,浪费时间 看懂就过,看不懂,学习有心得的 ...

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

    20155201 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC全名JavaDataBaseConnecticity,是Jav ...

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

    20155313 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 本周的Java学习进入了一个全新的阶段,对于我这样的并没有每天花费时间钻研的同学来说,最后几 ...

  4. 20145231 《Java程序设计》第一周学习总结

    20145231 <Java程序设计>第一周学习总结 教材学习内容总结 Java三大平台Java SE,Java EE,Java ME.其中,Java SE是我们学习的基础. Java S ...

  5. 20145238-荆玉茗 《Java程序设计》第一周学习总结

    20145238 <Java程序设计>第一周学习总结 教材学习内容总结 Java三大平台:由于java领域的应用越来越广,根据不同级别的应用开发区分了不同的应用版本,后正式更名为Java ...

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. 第八章 Mysql运算符

    算术运算符 符号 表达式形式 作用 + x1+x2 加法 - x1-x2 减法 * x1*x2 乘法 / x1/x2 除法 div x1 div x2 同上 % x1%x2 取余 mod mod(x1 ...

  2. 3dContactPointAnnotationTool开发日志(二九)

      今天想着在Windows平台上跑通那个代码,不过它的官网上写的支持平台不包括windows,但我还是想试试,因为看他的依赖好像和平台的关系不是特别大.   看了下它的py代码,不知道是py2还是p ...

  3. 利用C#进行文件读写的方法选择总结

    小的文本文件(100M以下)直接用File类的ReadAllText()和WriteAllText()方法 这两个方法内部其实就是封装了StreamReader类的ReadToEnd()和Stream ...

  4. 第101天:CSS3中transform-style和perspective

    一.transform-style 1.transform-style属性是3D空间一个重要属性,指定嵌套元素如何在3D空间中呈现. 有两个属性值:flat和preserve-3d. transfor ...

  5. bzoj1031-字符加密

    环的问题,经典方法倍长串,求出后缀数组,扫一次sa,如果sa[i]小于等于n,那么就输出这个字符串结尾的位置(即s[sa[i]+n-1]). 代码 #include<cstdio> #in ...

  6. HUST1017-Exact Cover

    给出一个\(n\times m\)的01矩阵,每行最多有\(c\)个1,求一个精确覆盖,即选出一些行使得每列有有且仅有一个1.输出方案. 分析 被这个题坑到了啊!!第一次上HUSTOJ做题,不知道没有 ...

  7. (一)Quartz2.2.1 简单例子

    转载至http://blog.csdn.net/a4307515/article/details/46985533 1.关键接口 Scheduler,任务调度的API:它可以用来启动或者终止任务等. ...

  8. 洛谷 P1352 没有上司的舞会

    树形动规入门题 先放题面 题目描述 某大学有N个职员,编号为1~N.他们之间有从属关系,也就是说他们的关系就像一棵以校长为根的树,父结点就是子结点的直接上司.现在有个周年庆宴会,宴会每邀请来一个职员都 ...

  9. 【JQuery】数据

    一.前言        接着前一章的内容,继续本章的学习 二.内容 queue 显示或操作在匹配元素上执行的函数队列 .queue(queueName) 操作在匹配元素上执行的函数队列 .queue( ...

  10. 常州day3

    Task1 小 W 得到了一堆石子,要放在 N 条水平线与 M 条竖直线构成的网格的交点上.因为小 M 最喜欢矩形了, 小 W 希望知道用 K 个石子最多能找到多少四边平行于坐标轴的长方形,它的四个角 ...