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

教材学习内容总结

  • Java的异常处理是通过5个关键字来实现的:try,catch,throw,throws,finally。
  • throws总是出现在一个函数头中,用来标明该成员函数可能抛出的各种异常。如果你想明确地抛出一个RuntimeException,你必须用throws语句来声明它的类型。
  • throw总是出现在函数体中,用来抛出一个异常。程序会在throw语句后立即终止,它后面的语句执行不到,然后在包含它的所有try块中(可能在上层调用函数中)从里向外寻找含有与其匹配的catch子句的try块。
  • try语句用大括号{}指定了一段代码,该段代码可能会抛弃一个或多个例外。
  • Catch:

    1.catch语句的参数类似于方法的声明,包括一个例外类型和一个例外对象。例外类型必须为Throwable类的子类,它指明了catch语句所处理的例外类型,例外对象则由运行时系统在try所指定的代码块中生成并被捕获,大括号中包含对象的处理,其中可以调用对象的方法。

    2.catch语句可以有多个,分别处理不同类的例外。Java运行时系统从上到下分别对每个catch语句处理的例外类型进行检测,直到找到类型相匹配的catch语句为止。这里,类型匹配指catch所处理的例外类型与生成的例外对象的类型完全一致或者是它的父类,因此,catch语句的排列顺序应该是从特殊到一般。

    3.也可以用一个catch语句处理多个例外类型,这时它的例外类型参数应该是这多个例外类型的父类,程序设计中要根据具体的情况来选择catch语句的例外处理类型。 
  • offer:添加一个元素并返回true,如果队列已满,则返回false

    poll:移除并返问队列头部的元素,如果队列为空,则返回null

    peek:返回队列头部的元素,如果队列为空,则返回null。
  • HashMap:建立的键值对应是无序的

    TreeMap:建立的键值对应是有序的

    values方法是获取集合中的所有的值,没有键,没有对应关

    KeySet是将Map中所有的键存入到set集合中。因为set具备迭代器。所有可以迭代方式取出所有的键,再根据get方法。获取每一个键对应的值。keySet():迭代后只能通过get()取key。

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

  • P265页的代码好像有问题啊。。,老师可不可以重点讲一下栈啊= =,感觉有点理解不了。

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

  • P265的SimpleLinkedList.java中的
    private Object findElemOf(int index) {
int count = 0;
Node last = first;
while(count < index) {
last = last.next;
count++;
}
return last.elem;
}
}

此段代码的作用是将收集的对象用Node封装,再根据第一段的代码,return的值就应该是last.o而不是last.elem。

  • Students.java

    中 System.out.println()括号中应该是students而不是set。

代码托管

  • 代码提交过程截图:

    • 运行 git log --pretty=format:"%h - %an, %cd : %s" 并截图

  • 代码量截图:

    • 运行 find src -name "*.java" | xargs cat | grep -v ^$ | wc -l 并截图

上周考试错题总结

  • JDB调试时单步执行命令有step和next,我们优先使用(next),next是把函数执行完成,step会跳进函数内部。
  • System.out.println( “HELLO”.( toLowerCase() ) )会输出“hello”
  • “Hello”.substring( 0,2 )

    的值是“He”,如果括号里面是整数的话,就会从前往后数相应个位置再继续往后输入。substring的运用。
  • Math中的abs()方法可以Override。而且abs()方法返回的是绝对值,不能进行重写。

结对及互评

评分标准

  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分

点评过的同学博客和代码

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

感觉自己的动手能力略差,思维有一些定式,不能熟练运用idea,不会调试程序啊= =,好尴尬。而且对于一些问题,不能总结自己的错误,并不能具体的描述自己的疑惑。。。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 10/10 1/1 10/10
第二周 100/100 2/2 19/25
第三周 200/278 1/3 10/26
第四周 660/938 1/4 10/36
第五周 1100/2100 1/5 18/54
  • 计划学习时间:20小时

  • 实际学习时间:18小时

  • 改进情况:多次学习教材,对于不能理解的地方进行答疑,但是还是有很多地方没有弄清楚,仍有待改进。

参考资料

无0.0

20155236 2016-2017-2 《Java程序设计》第五周学习总结的更多相关文章

  1. 201521123025<java程序设计>第五周学习总结

    1. 本周学习总结 2. 书面作业 1.代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出结果. 1.2 ...

  2. Java程序设计第五周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 2. 书面作业 **代码阅读:Child压缩包内源代码 Child.java源代 ...

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

    20155236 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC入门 1.JDBC简介 JDBC是用于执行SQL的解决方案,开发人员使用JDBC的标 ...

  4. # 20155236 2016-2017-2 《Java程序设计》第二周学习总结

    20155236 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 对于类型.变量.运算符.流程控制等等的学习.在其中包含着基本的语法元素,还有基本的逻辑语句. ...

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

    20155306 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 16.1 JDBC入门 Java语言访问数据库的一种规范,是一套API ...

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

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

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

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

  8. 20145236 《Java程序设计》第九周学习总结

    20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...

  9. 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结

    20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...

  10. 20155303 2016-2017-2 《Java程序设计》第二周学习总结

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

随机推荐

  1. 学习mysql触发器遇到的问题

    在 mysql.exe 下面运行的.如果是的话, 可能是需要加一个 定义 DELIMITER // 意思是告诉 mysql , 遇到 // 符号以后, 才认为语句结束了. 否则 mysql 遇到 分号 ...

  2. 《统计学习方法》P179页10.22前向后向算法公式推导

  3. SpringBoot(十二)_springboot整合PageHelper

    我之所以会发现这个PageHelper这个东东 是因为公司在使用 ,刚开始我也没太注意这个插件,感觉不就是个分页插件吗?也就那样,直到一天,我在网上找了个代码生成器,用来构建代码,因为它是针对mysq ...

  4. MT【159】单调有界有极限

    已知数列$\{a_n\}$满足:$a_n>0,a_{n+1}+\dfrac{1}{a_n}<2,n\in N^*$.求证:(1)$a_{n+2}<a_{n+1}<2 (n\in ...

  5. UIScrollView浏览一组图片,且图片与图片之间有间隔

    ---恢复内容开始--- UIScrollView是可以浏览一组view的,只要将其属性 pagingEnabled设置为true就可以了.具体过程是这样的, 1:将一组图片按照从左到右的顺序添加到U ...

  6. SpringBoot入门系列HelloWorld

    根据咱们程序员学习的惯例,学习一门新技术都是从HelloWorld开始的. 感觉编程是一件非常富有意义的事情,程序员也是一群可爱的人,渴望被关怀和关注,因为我们总在和世界say Hi. 好了进入正题 ...

  7. 《Linux内核设计与实现》第7章读书笔记

    第七章 链接 一. 链接的概念 链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程.可以执行于编译.加载和运行时,由叫做链接器(可实现分离编译)的程序自动执行. 二.静态链接 为了创建静态 ...

  8. yum报错Segmentation fault

    yum install 安装一个包,提示 Segmentation fault,可以确定的是这个源肯定是可用的. 经查询,是 libz 这个库存在多个版本,导致冲突. # ldconfig -v | ...

  9. [NOI2012]美食节——费用流(带权二分图匹配)+动态加边

    题目描述 小M发现,美食节共有n种不同的菜品.每次点餐,每个同学可以选择其中的一个菜品.总共有m个厨师来制作这些菜品.当所有的同学点餐结束后,菜品的制作任务就会分配给每个厨师.然后每个厨师就会同时开始 ...

  10. spring-session使用配置(分布式共享session配置)

    1. 添加依赖 <dependency> <groupId>org.springframework.session</groupId> <artifactId ...