20145120 《Java程序设计》第5周学习总结
教材学习内容总结
try和catch语法,如果被try{}的语句出现了catch()的问题就执行catch{}的语句。
错误的对象都继承于java.long.Throwable,它又分成java.long.Error和java.long.Exception
Error是java程序没办法恢复的
而Exception又分成不属于RunTimeException的受检异常和属于RunTimeException的非受检异常
受检异常是认为调用方法的客户端有能力处理的
非受检异常在执行时满足一定条件会出现,又称执行时期异常
父类异常被先捕捉子类异常则永不会执行
受检异常抛出前必须用throws声明,非受检异常不用
用printStackTrace进行堆栈追踪,但要注意不能有一下问题:
私吞异常,如catch{//空的}
对异常做不正当处理,如写不正确的信息
用fillInStackTrace出来的堆栈起点是重抛异常的地方
assert语句
assert boolean_expression,若boolean_expression为真则什么都不做,为假则出错
assert boolean_expression:detail_expression如果“:”左边为真则什么都不做,否则显示右边的对象
加了final的语句一定会执行
用java.long.AutoCloseable接口可以自动关闭
try中越后面的资源会越早关闭
Collection,其内容让我第一时间联想到了数据结构
link就像线性表、链表
Set可以收集不重复的对象
Queue队列:
offer:在队列后端添加元素,如果队列已满,则返回false
poll:取出队列前端元素,如果队列为空,则返回null
peek:取得队列前端元素,如果队列为空,则返回null
用Sort对collection的对象排序,但要看情况重新定义compare
Map:
用put进行键值对应,第一个变量是键,第二个是值
用get指定键取回该键对应的值
程序结果截图(因数量众多选取部分):
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
教材学习中的问题和解决过程
概念越来越难懂了
代码调试中的问题和解决过程
书本P-269的students果然有问题,到小组里一看就看到了蔡野提的问题,后来有看了下蔡野的博客,感觉真是获益良多,书上P-266页的SimpleLinkedList我偷懒没码出来,里面居然是错的。
本周代码托管截图
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
-------------------------------------------分割线-------------------------------------------
其他(感悟、思考等,可选)
感觉java的学习真的是越来越难了,开始看第8、9章我都感觉自己看得挺迷惑的,感觉跟着书写好了程序跑出来之后也只是一知半解的。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 1000行 | 16篇 | 300小时 | |
第一周 | 20/20 | 1/1 | 8/8 | |
第二周 | 71/91 | 1/2 | 9/17 | |
第三周 | 229/320 | 1/3 | 13/30 | |
第四周 | 280/600 | 1/4 | 16/46 | |
第五周 | 500/1100 | 1/5 | 18/64 |