20145109 《Java程序设计》第五周学习总结
20145109 《Java程序设计》第五周学习总结
教材学习内容总结
Chapter 8 Exception Handling
try, catch
All Exceptions are packed. If willing, 'try' to 'catch' instances, which are representative of exceptions, and deal with them.
try {
...
} catch (Exception ex) {
...
}

Exception Inheritance Architecture
Exception are packed as throwable. Throwable includes Error and Exception. Error and its sub class represents serious system error and no dealing. As to mistakes in program design, Exception or its sub class are recommended. It's also called Exception Handling.
Generally speaking, if some method can throw Throwable or subclass-instance, you must use 'try', 'catch' to handle it, except from Error and RuntimeException.
Multi-catch
try {
...
} catch (IOException | InterruptedException | ClassCastException e) {
e.printStackTrace();
}
catch? throws ?
If exception happens without sufficient info to deal with it when programming, we can throw exception. Thus, it is the cilent that handle it.
public class FileUtil {
public static String readFile(String name) throws FileNotFoundException {
...
}
}
Actually, when exception happens, we can handle what we can handle with 'try' 'catch', the left part we 'throw' to the client.
public class FileUtil {
public static String readFile(String name) throws FileNotFoundException {
StringBuilder text = new StringBuilder();
try {
Scanner console = new Scanner(new FileInputStream(name));
while (console.hasNext()) {
text.append(console.nextLine()).append('\n');
}
} catch (FileNotFoundException ex) {
ex.printStackTrace();
throw ex;
}
return text.toString();
}
}
** Inheritance ** :
if the parent class declare some exception, the sub class overrides this method properly in these ways:
- no declaration of throwing any exception by keyword 'throws'
- throws some exceptions in the parent-class method
- throws sub exceptions in the parent-class method
But the following is forbidden:
- throws other exceptions with no declaration in the parent class
- throws parent exceptions in the parent-class method
Stack Trace
The easiest way, is printStackTrace() .
The stack trace infomation in the console will show the type of exception. The origin is on the top.
assert
In some running time or situation, a state must be or not be. It is called assertion.
finally
No matter whether exception happens in 'try', if there's 'finally' block, it will be certain to execute.
try {
...
} finally {
...
}
Try-With-Resources
try(Scanner console = new Scanner(new FileInputStream(name))) {
...
}
Interface java.lang.AutoCloseable
Chapter 9 Collection & Map
java.util.List:
record the order of every instance and get them.
java.util.Set:
no repeat of the instances.
java.util.Queue:
yes, it's queue.
教材学习中的问题和解决过程
代码调试中的问题和解决过程
其他(感悟、思考等,可选)
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 50/50 | 2/2 | 8/8 | |
| 第二周 | 100/150 | 2/4 | 8/16 | |
| 第三周 | 250/400 | 2/6 | 10/26 | 用git上传代码 |
| 第四周 | 300/700 | 2/8 | 12/38 | 用wc查看代码行数 |
| 第五周 | 100/800 | 1/9 | 10/48 |
参考资料
20145109 《Java程序设计》第五周学习总结的更多相关文章
- 201521123025<java程序设计>第五周学习总结
1. 本周学习总结 2. 书面作业 1.代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出结果. 1.2 ...
- Java程序设计第五周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 2. 书面作业 **代码阅读:Child压缩包内源代码 Child.java源代 ...
- 20145109《Java程序设计》第二周学习总结
20145109 <Java程序设计>第二周学习总结 教材学习内容总结 Variable : naming rule : Camel case no default value e.g : ...
- 20145109《Java程序设计》第一周学习总结
20145109 <Java程序设计>第一周学习总结 教材学习内容总结 About JVM, JRE, JDK JVM包含于JRE中,用于运行Java程序.JDK用于开发Java程序,包含 ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145236 《Java程序设计》第九周学习总结
20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...
- 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结
20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...
- 20155303 2016-2017-2 《Java程序设计》第二周学习总结
20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...
- 20145237 《Java程序设计》第九周学习总结
20145237 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令 ...
随机推荐
- SurvivalShooter学习笔记(八.敌人管理器)
敌人管理器:管理敌人的随机出生点创建 在场景中建立几个空物体,作为敌人的出生点 public class EnemyManager : MonoBehaviour { public PlayerHea ...
- 3D游戏引擎〇 開始
游戏循环: 初始化:运行一些主要的初始化操作,如内存分配,资源获取.从磁盘载入数据等. 进入游戏循环:进入主游戏循环.用户不断地运行动作,知道退出主循环为止. 读取玩家输入:处理玩家输入,或将其存储到 ...
- Array转为Json需要导入的包
今天自己写了一个JSON的例子,可以一调用就出了问题,报下面这个异常: java.lang.ClassNotFoundException: org.apache.commons.lang.except ...
- Webservice工作原理及实例
Web Service工作原理及实例 一.Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者In ...
- AEcs6破解版下载
下载地址 http://pan.baidu.com/share/link?shareid=79184520&uk=1795677788 点击下载
- Dart基础学习02--变量及内置类型
Dart基础学习02--变量及内置类型 Dart中的变量 首先看一个变量的定义和赋值 var name = 'Bob'; 在Dart中变量名都是引用,这里的name就是一个指向值为Bob的字符串的引用 ...
- 巨蟒python全栈开发数据库攻略4:多表操作&Navicat&pymysql
1.多表查询 2.连表补充 3.boss工具=>Navicat 4.索引加速寻找工具=>everything 5.pymysql 6.pymysql初识 7.pymysql的各个方法
- Oracle数据库模型(OLAP/OLTP)
数据库模型 选择数据库模型: 联机事务处理OLTP(on-line transaction processing) OLTP是传统的关系数据库的主要应用,基本的.日常的事务处理.例如银行交易. OLT ...
- git 解决push报错:[rejected] master -> master (fetch first) error: failed to push some refs to
今天对代码进行了修改优化,然后往往远程push,但push后报错了 git操作 git add . git commit -m"fix" git push origin maste ...
- OVN实战---《The OVN Gateway Router》翻译
Overview 在本文中我将在前文的基础上添加一个OVN gateway router.gateway router将使得lab network能访问我们的overlay network The l ...