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

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

教材学习内容总结

这两章主要讲的是如何处理程序中的异常情况,对于错误,java会将其打包成对象,可以用“try”去“catch”对象,再做处理。对于被try捕捉到的错误,jvm会立刻跳出错误点,比较catch()中声明的错误类型,如果吻合就执行catch区块中的代码。如果遇见个数类型的catch区块在做同样的事情,而且catch区块内容都是重复的,就可以使用Multi-catch,这样可以方便撰写,也方便维护。throw用在catch区块操作完部分错误处理之后,再将异常抛出。在异常和资源管理的时候可以使用finally,在调用文档时,当文档读取完或者不使用时就应该close()关闭文档,但是如果程序在Scanner.close()前发生了异常,该语句就会因中断而不被执行,finally可以和try、catch搭配,若写有fianlly区块,则finally区块就一定要被执行,将Scanner.close();写在fianlly区块中就可以避免上述情况。使用collectio可以收集对象,具有索引的List是一种Collection,在每次add()对象时,会建立新的Node来保存对象,不会事先消耗内存。 常用的Map操作类有HashMap、TreeMap与Properties三种。如果想取得Map中所有的键,可以调用Map的keySet()返回Set对象。由于键是不重复的,所以使用Set操作返回或者使用values()返回Collection对象。

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

  • 问题1:Exception和RuntimeExcepiton之间的关系是什么一直没有搞懂。

  • 问题1解决方案:上网上百度之后才分清的,对于判断受检异常与非受检异常容易许多。

  • 问题2:在编写书上课后习题的代码时经常遇见args[0],开始并不清楚args[0]代表什么。

  • 问题2解决方案:只记得在最开始学java时,要打开main方法就一定要写public static void main(String[] args),后面才知道args是一个字符串数组的变量名,不是关键字,是arguments的缩写,只是一个默认名。String[ ] args表示给主方法传一个字符串数组。

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

  • 没有遇到问题。

代码托管

上周考试错题总结

  • 填空 :10&9 的结果是(8)
  • 填空:”Hello”.charAt(1) 的值是(‘e’)
  • 填空:System.out.println( “HELLO”.( toLowerCase() ) ) 会输出“hello”..
  • 判断:XX是一个引用型变量,System.out.println(XX)等价于System.out.println(XX.toString()). (OK)
  • 判断:Java中所有的对象都有equals()方法。(OK)
  • 实现一个类中的equals()方法时,一定要同时实现(hashCode())方法
  • 面向对象中,设计经验可以用(设计模式)表达
  • 判断:final可以用在类,方法,变量前。(OK)
  • Math中的abs()方法可以Override.(X)
  • 判断:接口中 int STOP等价于public static final int STOP. (ok)
  • 填空:实现接口表示(拥有行为),但不是ISA关系。
  • 判断:Math中的abs()方法可以Override.(X)

结对及互评

评分标准

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

    • 不使用Markdown不加分
    • 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
    • 排版混乱的不加分
  2. 模板中的要素齐全(加1分)

    • 缺少“教材学习中的问题和解决过程”的不加分
    • 缺少“代码调试中的问题和解决过程”的不加分
    • 代码托管不能打开的不加分
    • 缺少“结对及互评”的不能打开的不加分
    • 缺少“上周考试错题总结”的不能加分
    • 缺少“进度条”的不能加分
    • 缺少“参考资料”的不能加分
  3. 教材学习中的问题和解决过程, 一个问题加1分

  4. 代码调试中的问题和解决过程, 一个问题加1分

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

    • 一周提交次数少于20次的不加分
  6. 其他加分:

    • 周五前发博客的加1分
    • 感想,体会不假大空的加1分
    • 排版精美的加一分
    • 进度条中记录学习时间与改进情况的加1分
    • 有动手写新代码的加1分
    • 课后选择题有验证的加1分
    • 代码Commit Message规范的加1分
    • 错题学习深入的加1分
  7. 扣分:

    • 有抄袭的扣至0分
    • 代码作弊的扣至0分

点评模板:

  • 基于评分标准,我给本博客打分:7分。得分情况如下:

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

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

  • 教材学习中的问题和解决过程, 一个问题加1分(2个)

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

  • 排版精美的加一分

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

  • 参考示例

点评过的同学博客和代码

其他(感悟、思考等,可选)

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 ?/200 1/4 20/20
第二周 300/500 1/5 18/38
第三周 500/1000 1/6 20/58
第四周 800/1600 1/7 21/78
第五周 500/2100 1/7 21/78

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

参考(https://home.cnblogs.com/u/Hdywan/)

  • 计划学习时间:29小时

  • 实际学习时间:29小时

  • 改进情况:

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

参考资料

posted @ 2017-03-26 22:46  专业打劫三十年  阅读(171)  评论(6编辑  收藏  举报