20172306《Java程序设计与数据结构》第九周学习总结
20172306《Java程序设计》第九周学习总结
教材学习内容总结
第十一章:
- try-catch语句。其中还有finally语句。try是进行某些操作,catch是捕获异常,并通过某些异常来进行某些操作。finally是无论是否有异常都会进行的语句。可以没有catch语句。
- 异常的传递。我觉得传递,主要是某地方的异常是由其他的方法引起的,异常就会传递到那个方法上。书中的例子可以很好的表现出来。
- IO异常。书中的内容主要是围绕异常来写。老师在蓝墨云中有写有关IO更为详细的内容。例如创建文件,写入文件,读取文件等等。
第十二章:
- 递归和循环是差不多的但是还是有不同的。对于死循环和死递归,死循环会一直循环运行,而死递归会出现溢出。因为空间是有限的。
- 通过迷宫旅行和汉诺塔问题的模型,我个人学习到的是,考虑问题需要详细一些。具体的代码如何编写,我认为更重要的是理解它是如何进行操作的。
教材学习中的问题和解决过程
问题1:什么是方法调用堆栈踪迹?
问题1解决方案:我上网查了一下。
问题2:对于eg11.2中一行代码:district = Integer.parseInt(code.substring(3,7));中(3,7)不明白是多少到多少?
问题2解决方案:利用IDEA可以看到,substring(begineIndex,endIndex);我又问了同学,知道了这个应该是索引3,4,5,6。没有7。
问题3:
问题3解决方案:最开始没有理解它start,end,temp的含义。后来问了同学,加上自己的理解。知道其实这个方法,就是我们平时的时候,通过不断调用的另一个柱子以实现从大到小的排列的这么一个过程。
代码调试中的问题和解决过程
问题1:在进行课后的实验的时候,有这样的问题
,不知道是为什么
问题1解决方案:原来是在IDEA中,我应用了中文,那么我就应该
,从而可以应用中文。
问题2:在做PP12.1时,最开始我想的是根据书中的迷宫旅行的代码的样式,对第五章的Tester进行改造。
,但是结果却是错误的。即使是用书中的例子abracadabra,结果出来也是IS而实际应该是NOT
问题2解决方案:最开始我想的是,是不是我的条件出现了错误。我进行了略微调整,发现依旧是错的。后来我在想,这个不通,可不可以看看尝试一下汉诺塔的那个模型,后来用了另一种方式成功了。
问题3:在做PP12.9的习题时,花费了很久的时间。最开始我找不到它的逻辑。后来想到可以按照行和列的数组的形式。我就在书中写了这个
,然后编了一个递归的类。但是出现了这个问题
问题3解决方案:我上网查了一下,这个意思就是栈溢出,说明我的表达式不够优化。所以又进行了修改。
问题4:还是对于PP12.9的问题。我可以运行了,但是结果是
我就改了一下,但是又变成了
问题4解决方案:本来我就打算就这样吧,后来还是问了一下同学,才知道我应该怎么改,然后得到了符合条件的结果
代码托管
上周考试错题总结
- A finally clause will execute
A only if the try statement that precedes it does not throw an exception
B only if the try statement that precedes it throws an exception that is caught
C only if the try statement that precedes it throws an exception that is not caught
D only if the try statement that precedes it throws an exception, whether it is caught or not
E in any circumstance 本题选E ,这题是我的马虎。finally会在任何情况下都会执行。 - The Scanner class provides an abstraction for input operations by Scanner类为输入操作提供了一个抽象
A using try and catch statements to catch any IOException instead of throwing the Exception elsewhere(使用try和catch语句捕捉任何IOException,而不是将异常抛出其他地方)
B parsing input lines into individual tokens(将输入行解析为单个记号)
C performing conversion operations from String to the appropriate type as specified in the Scanner message(在扫描消息中指定的从字符串到适当类型的转换操作)
D inputting from the standard input stream if create is called using System.in(如果创建的调用是使用系统的那么从标准输入流中输入。)
E all of the above 本题选E - The term "exception propagation" means
A an exception is caught by the first catch clause
B an exception not caught by the first catch clause is caught by an outer (enclosing) catch clause(不被第一个catch子句捕获的异常被一个外部(封闭的)catch子句捕获)
C exceptions are caught, sequentially, by catch clauses in the current try block
D exceptions always are caught by the outermost try block(异常总是被最外层的try块捕获)
E none of the above 本题选E - A method that uses the Scanner class to obtain input does not require either catching or throwing an IOException. This is because
A the Scanner class does not call upon any classes that throw checked exceptions
B the Scanner class' methods call input methods in try statements and catch IOExceptions so that they are handled directly in the Scanner class
C the Scanner class uses JOptionPane dialog boxes instead of java.io classes so that it does not have to deal with IOExceptions
D the Scanner class overrides the class IOException making it an unchecked exception
E none of the above, methods do require handling IOException even if thrown by a method in a Scanner class 本题选B - The following defines a new Exception called AnewException.
public Exception ANewException
{
public ANewException(String message)
{
super(message);
}
}
A true
B false 本题选B 它应该定义的是一个类,而不应该是Exception. - If an exception arises in a catch statement, and the exception is of the type caught by the catch statement, then the catch statement catches the same exception. For instance, if the following catch statement first catches an ArithmeticException and, while executing, throws another ArithmeticException, it is able to catch the second ArithmeticException as well the first.
catch (ArithmeticException ex) {...}
A true
B false 本题选B 一个exception导致当前语句停止执行和控制转移到第一个捕获(在当前语句之后)的转移,从而捕获异常。因此,catch语句不会捕捉从自身内部抛出的异常,尽管catch语句可以嵌套在它的内部附加尝试和捕获语句。 - The difference between the throw reserved word and the throws reserved word is that throw is used within a method body, while throws is used within a method header.
A true
B false 本题选A,这个主要是throws和throw的区分。
结对及互评
点评模板:
博客中值得学习的或问题:
- 我觉得他可以在看书的时候思考是一件很值得学习的事情。对于错误和异常的那个问题,我看到的时候,我在想我为什么没有想到呢。而且看了他的解答,我觉得还是很容易懂的。
代码中值得学习的或问题:
- 他在问题中可以学到新的东西,这是很好的一个习惯,值得我学习。
基于评分标准,我给本博客打分:8分。
点评过的同学博客和代码
- 本周结对学习情况
- 20172325
- 一起学习了第十一章和第十二章的内容。
- 继续了四则运算的编程。
- 20172325
其他
这两章是在老师讲了之后我才去看的。基本是看得懂的。但是老师说对于IO异常这个方面,更需要了解的是如何利用流进行读写文件等。这个方面我觉得我还不是很会,所以之后还会继续学习这个。而十二章,我觉得对于我来说,重点就是要了解它每一步的操作,因为我觉得书中的递归的代码写的十分的缜密,这个方面我也不擅长,就在编写后面的题时就可能想少东西,导致结果有问题。还需要学习。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 193/200 | 1/1 | 20/20 | |
第二周 | 247/440 | 1/1 | 22/42 | |
第三周 | 445/895 | 2/2 | 20/62 | |
第四周 | 885/1780 | 1/1 | 43/105 | |
第五周 | 775/2555 | 1/1 | 55 /160 | |
第六周 | 1171/3726 | 1/1 | 38/198 | |
第七周 | 596/4322 | 1/1 | 60/258 | |
第八周 | 569/4891 | 2/2 | 55 /313 | |
第九周 | 1890/ 6781 | 1/1 | 66/379 |
参考资料
20172306《Java程序设计与数据结构》第九周学习总结的更多相关文章
- 《JAVA程序设计》_第九周学习总结
一.学习内容 1.数据库的建立.配置 在官网先下载好MySQL.navicat for MySQL.XAMPP.MySQL-connecter 在XAMPP中点击start开启MySQL 在navic ...
- 20172306 2018-2019-2 《Java程序设计》第五周学习总结
20172306 2018-2019-2 <Java程序设计>第五周学习总结 教材学习内容总结 查找 查找中,我们对这些算法的实现就是对某个Comparable对象的数组进行查找 泛型声明 ...
- 20172306《Java程序设计》第五周学习总结
20172306 2016-2017-2 <Java程序设计>第五周学习总结 教材学习内容总结 第五章主要学习了if以及while的语句的运用 运算符:== 代表相等,是两个之间的内存地址 ...
- 20172325 2017-2018-2 《Java程序设计》第十一周学习总结
20172325 2017-2018-2 <Java程序设计>第十一周学习总结 教材学习内容总结 Android简介 Android操作系统是一种多用户的Linux系统,每个应用程序作为单 ...
- 20172325 2017-2018-2 《Java程序设计》第十周学习总结
20172325 2017-2018-2 <Java程序设计>第十周学习总结 教材学习内容总结 1.集合与数据结构 集合是一种对象 集合按照保存类型来看可以分为两种: (1)同构集合:只能 ...
- 20145213《Java程序设计》第五周学习总结
20145213<Java程序设计>第五周学习总结 教材学习内容总结 "素衣莫起风尘叹,犹及清明可到家."每每念此,不得不心疼自己.古人清明长假都进城耍了,还担心自己清 ...
- 20155231 2016-2017-2 《Java程序设计》第5周学习总结
# 20155231 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 学习目标 理解异常架构 掌握try...catch...finally处理异常的方法 会 ...
- 20172325 2018-2019-2 《Java程序设计》第八周学习总结
20172325 2018-2019-2 <Java程序设计>第八周学习总结 教材学习内容总结 一.堆 1.什么是堆? 具有两个附加属性的一个二叉树. 堆分为小顶堆和大顶堆. 最小堆:对每 ...
- 20172325 2018-2019-2 《Java程序设计》第六周学习总结
20172325 2018-2019-2 <Java程序设计>第六周学习总结 教材学习内容总结 本周学习第十章--树 1.什么是树 (1)树是一种数据结构,与之前学过的栈.队列和列表这些线 ...
- 20172325 2018-2019-2 《Java程序设计》第五周学习总结
20172325 2018-2019-2 <Java程序设计>第五周学习总结 教材学习内容总结 本次学习第九章内容,主要学习查找和排序. 查找 查找的定义:是一个过程,即在某个项目组中寻找 ...
随机推荐
- python基础学习 Day19 面向对象的三大特性之多态、封装
一.课前内容回顾 继承作用:提高代码的重用性(要继承父类的子类都实现相同的方法:抽象类.接口) 继承解释:当你开始编写两个类的时候,出现了重复的代码,通过继承来简化代码,把重复的代码放在父类中. 单继 ...
- lombok @Builder注解使用的例子、反编译之后的代码详解
lombok的@Builder实际是建造者模式的一个变种,所以在创建复杂对象时常使用 这里对lombok的@Builder和@Data组合的使用示例 import lombok.Builder; im ...
- apache安装配置
因为个人是在docker上面做实验的,所以可以多少会有些出入. 1.先启动一个docker,配置好基本的工具,网络啊,ssh啊是,tar啊,wget啊,vim等等. 其次去官网获取自己想要的压缩文件的 ...
- yum update 自动忽略内核更新
系统每天凌晨 3 点自动执行 yum update 任务 但升级内核后,会出现下面情况 一些编译软件需要内核模块才能够被调用, 而内核模块需要与当前版本内核编译后才能够使用, 假设内核升级后,之前软件 ...
- Linq to sql 之 ExecuteQuery 错误:指定的转换无效
问题:通过dbContext.ExecuteQuery 得到数据并赋值给一个集合. 代码: public IEnumerable<LeaveCodeSum> GetLeavTotal(st ...
- 添加setuptools脚本
#!/usr/bin/env python """Setuptools bootstrapping installer. Maintained at https://gi ...
- HTTP协议之请求
HTTP请求 组成 一个http请求通常由三个部分组成: 请求行(request line) 首部(header) 主体(body) 格式如下所示 <request-line><CR ...
- 电商项目中学到的git命令
1.在拉下来的文件夹被删除后的操作 创建了文件后 git init 增加了 .git文件 ls -al 查看后有.git文件夹 git remote add origin (ssh) 连接到git仓库 ...
- 【转】 mysql 数据优化
数据库优化离不开索引,如何理解索引? ---------------------------------------------------------------------------- 可以参考 ...
- Wannafly挑战赛14 C.可达性(tarjan缩点)
题目描述 给出一个 0 ≤ N ≤ 105 点数.0 ≤ M ≤ 105 边数的有向图, 输出一个尽可能小的点集,使得从这些点出发能够到达任意一点,如果有多个这样的集合,输出这些集合升序排序后字典序最 ...