20172325 2017-2018-2 《Java程序设计》第九周学习总结

教材学习内容总结

异常

1.学习了异常的基本概念;
2.区分异常与错误:

  • 一个异常是指一个定义非正常情况或错误的对象,由程序或运行时环境抛出,可以根据需要进行相应的捕获和处理。而错误类似于异常,但是错误代表不可恢复的问题并且必须捕获处理。
  • 一个异常确实代表了一个错误,但是异常只是代表了一种意外的情况,即一种在正常条件下不会发生的情况,异常处理提供了一种处理异常的有效方式。
    3.处理异常的三个基本方法:
  • 根本不处理异常
  • 当异常发生时处理异常
  • 在程序某个位置集中处理异常
    4.try-catch语句
  • 没有异常,将继续执行try语句后的语句块,所有catch子句后的语句。
  • 有异常,则控制立刻转移到相应的catch子句处理异常。
    5.finally语句
  • 一条try-catch语句可以有一个可选的finally子句,用于定义一段无论是否有异常发生都将执行的代码。
  • 如果有finally子句,则必须跟在所有的catch子句后面。
  • try语句块可以没有catch子句,但仍然可以使用finally子句。

递归

1.递归思想:递归是一种方法能够调用自己的编程技术,掌握递归编程的关键是能以递归的思想考虑问题;
2.无穷递归的情况类似于无限循环;
3.直接递归和间接递归:

  • 方法调用自己的递归,称为直接递归;
  • 如果一个方法调用其他方法,最终导致再次调用自己,则称为间接递归。
    4.递归的经典应用是迷宫旅行和汉诺塔问题;

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

  • 问题1:当学习了异常的概念和解决办法以后,我想异常和错误有什么差别,为什么错误不能用解决异常的方法在处理。
  • 问题1解决方案:在教材的思考题中学到了错误和异常的区别:
    异常:是一个定义非正式情况或错误的对象,由程序或者运行时环境抛出,可以根据需要捕获和处理。
    错误:错误类似于异常,但是错误代表不可恢复的问题并且必须捕获处理。
    然而到了这里,我依旧不知道为什么不能用相同的办法处理,于是查找了相关资料,意识到他们相似但是不完全一样,主要差异在运行时出现错误的等级,相比较来说“错误”等级更高。

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

  • 问题1:在完成课堂实践时出现了一个代码运行结果始终为1的情况,而且错误点还无限

  • 问题1解决方案:问了王老师,他说这就是无穷递归的情况,问题出在if-else语句上面,做了如下改进,运行便成功了,着加深了我对无穷递归的理解。

代码托管

脚本截图

上周考试错题总结


分析:这个题出错主要是由于对于概念的理解不够清楚。重载只是为具有不同参数列表的方法提供了替代方法。重写提供了多态性,因为根据当前正在引用的对象调用适当的方法。嵌入是类中的类的封闭。抽象与多态性无关。封装是通过使用可见性修饰符(公共的、私有的、受保护的)实现的。

Upcasting是完全安全的,它是Java支持的单一继承结构的产物。相比之下,Downcasting必须由程序员明确地完成。Java只在一个方向上进行强制转换。upcasting和downcasting的规则并不依赖于使用中的可见性修饰符。

虽然继承和接口支持多态性,但只有在具有后期绑定的情况下才会这样做。但是,重载是多态性的一种形式(方法)名称,多个主体,因此只要程序使用重载,多态性就会被使用。

结对及互评

点评模板:

  • 博客中值得学习的或问题:

    • 刘辰同学在博客记录问题上面比以前更加细致了,对于问题的描述和解决过程逗比以前更好,希望继续努力;
    • 在排版上好像出了点问题,教材问题一的图片好像出现了超出界面的情况,希望改正。
  • 代码中值得学习的或问题:
    • 很好
    • 非常好
  • 基于评分标准,我给本博客打分:满分。

    点评过的同学博客和代码

  • 本周结对学习情况
    • 20172306

      • 结对学习内容
      • 学习第十一和十二章pp项目。
      • 学习异常和递归的具体内容
      • 对于IO操作的共同探讨
      • 继续完善四则运算的的项目

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

  • 一直觉得老师应该先讲课,我们再进行进一步的研究学习,毕竟老师应该先传播知识嘛,现在的模式就很舒服了,在学习过程中遇到的问题少了很多,有很多东西看到了就知道,不用像以前那样找不到专业解答,还得自己去找一个个不知道对错的答案。
  • 前一个月每晚都要去练习啦啦操,和班里同学相比少了很多学习时间,现在终于结束,必须要加紧步伐,更上老师同学的脚步呢。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 129/129 1/1 20/20
第二周 359/488 1/2 18/38
第三周 521/1009 2/4 22/60
第四周 1057/2066 1/5 30/90
第五周 636/2702 1/6 30/120
第六周 489/3191 1/7 28/158
第七周 831/4022 1/8 41/199
第八周 382/4404 3/11 16/215
第九周 1301/5705 2/13 28/243

参考资料

20172325 2017-2018-2 《Java程序设计》第九周学习总结的更多相关文章

  1. 201521123027 <java程序设计>第九周学习总结

    1.本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2.书面作业 Q1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什 ...

  2. 20145220java程序设计第九周学习总结

    20145220java程序设计第九周学习总结 教材学习内容总结 JBDC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据库厂商对接口直接操作,开发人员无须接触底层数据可驱动程序的差异 ...

  3. 201771010134杨其菊《面向对象程序设计java》第九周学习总结

                                                                      第九周学习总结 第一部分:理论知识 异常.断言和调试.日志 1.捕获 ...

  4. 201521044152<java程序设计>第一周学习总结

    本周学习总结 java开发时间虽然很短,但是发展迅速,已成为现在非常流行的一门语言,很开心能有幸学习java.第一周学习了java的平台,运行环境jdk以及jrt等等新名词,还了解了eclipse的基 ...

  5. 20145304 刘钦令 Java程序设计第二周学习总结

    20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...

  6. 20145304 刘钦令 Java程序设计第一周学习总结

    20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...

  7. 201621123007 Java程序设计第一周 学习总结

    第一周-Java基本概念 201621123007 <Java程序设计> 第一周学习总结 1. 本周学习总结 java是面向对象的一类语言,三大特征:封装性,继承性,多态性. jdk jr ...

  8. 马凯军201771010116《面向对象与程序设计Java》第九周学习总结

    一.理论知识部分 异常.日志.断言和调试 1.异常:在程序的执行过程中所发生的异常事件,它中断指令的正常执行. 2.Java的异常处理机制可以控制程序从错误产生的位置转移到能够进行错误处理的位置. 3 ...

  9. 201521123063 JAVA程序设计 第二周学习总结

    1.本周学习重点(2.27-3.5) java中的数组 以二维数组为例,数组名为scores,则 (1)先声明数组 int[][] scores;或int scores[][];或int[] scor ...

  10. 《Java》第九周学习总结

    下载mysql 选择mysql的管理软件 idea可以直接连接 然后用库运行程序,但是没有截图,,因为想在navicat上试试,可惜速度太慢了 打开idea又很慢,所以明天再更新

随机推荐

  1. Bogart gSub.vb

    '--------------Job No 0900408 -------------- '--DIM PART ONE ONLINE Update Order Qty '''主要新加過程名 Refr ...

  2. 使用 IIS 过程中遇到的一些问题

    由于我最近开发的 Web 程序多是采用 Python 为主,因此大部分都是部署在 Linux 下的,自然在 Web 服务器上就选择了 Nginx,不过一些纯静态文件的 Web 应用会放在 IIS 下面 ...

  3. apache http get 和 post 请求

    1.首先要把jar依赖进项目 <dependency> <groupId>org.apache.httpcomponents</groupId> <artif ...

  4. word 2013 自动保存太慢,下面读条起码3分钟

    该问题有可能是应用干扰或者安全设置问题导致的. 建议您尝试以下方法: 方法一: 尝试使用干净启动来暂时禁用计算机启动时所加载的第三方程序来进一步做测试: 如何在Windows 中执行干净启动步骤 具体 ...

  5. input文本框 放上图片img 通过padding relative和absolute 的实现

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. apiCloud事件发送与监听

    apiCloud事件发送与监听 1.sendEvent 将任意一个自定义事件广播出去,该事件可在任意页面通过 addEventListener 监听收到. sendEvent({params}) 2. ...

  7. ntohs, ntohl, htons,htonl的比较和详解【转】

    ntohs =net to host short int 16位 htons=host to net short int 16位 ntohs =net to host long int 32位 hto ...

  8. 迷你MVVM框架 avalonjs 学习教程12、数据联动

    在许多表单应用,我们经常遇到点击一个复选框(或下拉框)会引发旁边的复选框(或下拉框)发生改变,这种联动效果用avalon来做是非常简单的.在avalon里,存在各种绑定回调与$watch回调,完全满足 ...

  9. java编写一个汽车类,有属性:品牌、型号、排量、速度,有方法:启动、加速、转弯、刹车、息火

    /* * 汽车实体类 * 类里面有属性和方法 */public class Car {    String  brand;   //汽车品牌    String modelNumber; //汽车型号 ...

  10. Unity C# 调用 C++ DLL 并在 DLL 中调用 C# 的回调函数

    Unity C# 调用 C++ DLL 并在 DLL 中调用 C# 的回调函数~~~    呵呵... 看着有点晕.. 再解释一下就是 在Unity中 使用 C# 调用 C++ 写的 DLL, 但是在 ...