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小时

  • 改进情况:

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

参考资料

最新文章

  1. Linux Linux程序练习十七
  2. Invalidate,Update与Refresh的区别
  3. 在UITableViewStylePlain情况下sectionHeader可以与tableview一起滑动的解决方法
  4. 【BZOJ 3504】[Cqoi2014]危桥
  5. POJ 3177 Redundant Paths 边双(重边)缩点
  6. 网站压力测试工具webbench 安装与使用
  7. sublime的js调试环境(基于node环境)
  8. cf B. Inna and Nine
  9. struts2 s:textfield
  10. Excel教程(12) - 数学和三角函数
  11. 新浪微博share分享接口请求奇葩错误
  12. JAVA基础第五组(5道题)
  13. Oracle之 any 、some、all解析
  14. doubi -- 初创
  15. RocketMQ(二):RPC通讯
  16. Android中资源的引用
  17. laravel依赖注入 容器
  18. Ubunut操作系统下nDPI的部署及简单使用
  19. Redis 安全配置
  20. 模拟 SQLSERVER 死锁

热门文章

  1. 关于js基本类型与引用类型(堆内存、栈内存的理解)
  2. 11git更改提交
  3. jQuery 版本选择与常见插件库总结
  4. Android UI测量、布局、绘制过程探究
  5. Opera官网打不开 下载Opera最新版本的实际地址
  6. 是否升级IOS11?IOS11不支持32位程序 查看手机哪些APP不支持
  7. Java参数引用传递之例外:null
  8. Intelligent Factorial Factorization LightOJ - 1035(水题)
  9. MT【135】条件线性化
  10. ALC662 在Mac中的安装