20155333 2016-2017-2 《Java程序设计》第五周学习总结
2017-03-26 20:53
381 查看
20155333 2016-2017-2 《Java程序设计》第五周学习总结
教材学习内容总结
1、使用try、catch语法与C语言中程序流程和错误处理混在一起不同,Java中把正常流程放try块中,错误(异常)处理放catch块中
catch 多个异常
API文档中带throws的必须使用try...catch
多个catch一定把父类放后面
2、异常架构
Error及其子类写程序不用处理,最多留个日志
Java异常处理是要处理Exception类及其子类(Checked Exception)
RuntimeException及其子类也不用处理(Unchecked Exception)
产生RuntimeException的问题在调用代码
3、Multi-catch:类之间不能有继承关系
学习Java API时一定对上层的类好好研究,学习,再学习和应用子类时就比较容易了
4、catch or throw?
throws:自己无法处理,用在方法声明
throw:方法中抛出CheckedException,方法声明中必须有throws
5、异常堆栈
printStackTrace
善用堆栈追踪错误
代码中不要私吞异常
不要错误处理异常
处理时不要显示错误信息
6、使用finally
try-catch-finally
7、try with resources
关闭多个资源时用分号分隔
8、java.lang.AutoCloseable
try with resources的对象必须实现AutoCloseable接口
9、Connection: 增、删、遍历对象
add
remove
clear
size
iterator
10、List: 类似数组,具有位置信息,带索引
核心方法
add(int index, E element)
remove(int index)
set(int index, E element)
ArrayList
《数据结构》中的线性表
LinkedList
《数据结构》中的链表
11、Set: 其中的对象不能有重复的
12、Queue: 队列
核心方法
offer
poll
peek
Deque: 双向队列
13、Iterable与Iterator
Iterator
next
hasNext
14、Comparable与Comparator
sort:Java中对象排序,要么对象实现了Comparable可以直接sort要么提供Comparator对象告知sort如何排序
15、常用的Map类
Map
put
get
size
remove
forEach
HashMap
TreeMap
Properties:配置文件
16、访问Map键值
keySet
values
教材学习中的问题和解决过程
问题1. Error 与 Exception 的异同解决:
Error与其子类实例代表严重系统错误,例如硬件层面错误、JVM错误或内存不足等问题。
程序设计本身的错误,建议使用Exception或其子类实例来表现,所以通常称错误处理为异常处理。
问题2.
代码调试中的问题和解决过程
问题1.解决
将
System.out.println(set);改为
System.out.println(students);即可解决。
问题2.
解决
缺少
import java.util.*;
代码托管
上周考试错题总结
1、使用JDB进行调试时查看源代码的命令是(list)。2、”Hello”.charAt(1) 的值是(‘e’)。
3、System.out.println( “HELLO”.( toLowerCase() ) ) 会输出“hello”。
toLowerCase()的作用:将此字符串中所有字符转化为小写。
4、”Hello”.substring( 0,2 )的值是“He”。
substring()方法用于提取字符串中介与两个制定下表之间的字符。
5、写出编译P165 RPG.java的命令(javac –d . *.java)。
p165 RPG.java是一个测试函数,需把工作类及测试类的程序全部编译。
6、Java中一个类可以继承多个类。(X)
7、用enum定义一个Season的类型表示四季(public enum Season{SPRING, SUMMER, AUTUMN,WINTER})。
enum中列举的常数一般用大写字母表示。
8、XX是一个引用型变量,System.out.println(XX)等价于System.out.println(XX.toString()). (OK)
结对及互评
20155312这周搭档对我的帮助主要是在做周三的练习题时帮我分析、修正代码。在准备计算机二级的考试时相互鼓励,和我共享复习资料和考试经验,帮我解决学习过程中遇到的问题,还经常督促我学Java。
评分标准
正确使用Markdown语法(加1分):不使用Markdown不加分
有语法错误的不加分(链接打不开,表格不对,列表不正确...)
排版混乱的不加分
模板中的要素齐全(加1分)
缺少“教材学习中的问题和解决过程”的不加分
缺少“代码调试中的问题和解决过程”的不加分
代码托管不能打开的不加分
缺少“结对及互评”的不能打开的不加分
缺少“上周考试错题总结”的不能加分
缺少“进度条”的不能加分
缺少“参考资料”的不能加分
教材学习中的问题和解决过程, 一个问题加1分
代码调试中的问题和解决过程, 一个问题加1分
本周有效代码超过300分行的(加2分)
一周提交次数少于20次的不加分
其他加分:
周五前发博客的加1分
感想,体会不假大空的加1分
排版精美的加一分
进度条中记录学习时间与改进情况的加1分
有动手写新代码的加1分
课后选择题有验证的加1分
代码Commit Message规范的加1分
错题学习深入的加1分
扣分:
有抄袭的扣至0分
代码作弊的扣至0分
点评模板:
基于评分标准,我给本博客打分:XX分。得分情况如下:xxx参考示例
点评过的同学博客和代码
20155312其他(感悟、思考等,可选)
因为前面几周没有跟上进度的缘故,感觉学习效率并未有所提高,而且越来越跟不上进度,一周学两章对我来说有点困难。学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 12/12 | 1/4 | 20/20 | |
第二周 | 64/76 | 1/5 | 22/42 | |
第三周 | 560/636 | 1/6 | 22/64 | |
第四周 | 532/1168 | 1/7 | 20/84 | |
第五周 | 510/1728 | 1/8 | 20/104 |
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
参考:软件工程软件的估计为什么这么难,软件工程 估计方法
计划学习时间:25小时
实际学习时间:20小时
改进情况:学习效率并未有显著提高
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)
参考资料
Java学习笔记(第8版)《Java学习笔记(第8版)》学习指导
...
相关文章推荐
- 20155302 2016-2017-2《Java程序设计》第五周学习总结
- 20155236 2016-2017-2 《Java程序设计》第五周学习总结
- 20155209 2016-2017-2 《Java程序设计》第五周学习总结
- 20155318 2016-2017-2 《Java程序设计》第五周学习总结
- 20155310 2016-2017-2 《Java程序设计》第五周学习总结
- 20155321 2016-2017-2 《Java程序设计》第五周学习总结
- 20155304 2016-2017-2 《Java程序设计》第五周学习总结
- 20155230 2016-2017-2 《Java程序设计》第五周学习总结
- 20155305乔磊2016-2017-2《Java程序设计》第五周学习总结
- 20155229 2016-2017-2 《Java程序设计》第五周学习总结
- 20155334 2016-2017-2 《Java程序设计》第五周学习总结
- 2016-2017-2 《Java程序设计》第五周学习总结
- 20155211 2016-2017-2 《Java程序设计》第五周学习总结
- 20155333 2016-2017-2 《Java程序设计》第三周学习总结
- 20155213 2016-2017-2 《Java程序设计》第五周学习总结
- 20155201 2016-2017-2 《Java程序设计》第五周学习总结
- 20155227 2016-2017-2 《Java程序设计》第五周学习总结
- 20155336 2016-2017-2《JAVA程序设计》第五周学习总结
- 20155315 2016-2017-2 《Java程序设计》第五周学习总结
- 20155320 2016-2017-2 《Java程序设计》第五周学习总结