笔记是看黑马视频一边做的,主要是用于自己复习用。
https://blog.csdn.net/HDZ1821/article/details/104577474 详细请了解这篇文章。
目录
throw关键字:(交给虚拟机处理)在指定的方法里抛出指定的异常对象。
2.finally有return语句,永远会返回finally中的结果,避免该情况
异常:
分类:
处理异常的两种方式:
交给jvm处理异常: 在类/方法后面写上throws Exception
这样的话就会导致一旦出现了异常,计算机在执行的时候就会被中断,然后去报错。
写try catch处理异常:
一旦出现了异常,计算机在执行的时候会报错,但是不会被中断,后续代码还是可以继续执行的。
例子:
exception
error
异常的产生过程解析:
throw关键字:(交给虚拟机处理)在指定的方法里抛出指定的异常对象。
个人思考:
1. 这个方法适用于对自己代码很了解的人,知道到哪里会抛出什么类型的异常,这样做有什么不安全的地方。
2. 但是如果是经验不足的程序员,一般不会特别清楚异常的类型,反而用这个方法不太明确,所以个人觉得不太推荐用这个。
3. 但是它的好处是直观形象。因为一旦遇到错误代码之后,就可以自己在后面自行设置相应的输出语句。
4. 而且它的写法非常的简便。
例子:
Objects非空判断requireNonNull() :
例子:
声明异常throws (交给虚拟机处理)
例子:
try...catch异常处理 自己处理异常
概述:
例子:
Throwable类中三个异常处理的方法:
例子:
finally代码块:
异常的注意事项:
1.多异常使用捕获又该如何处理呢?
1.多个异常分别处理
2.多个异常一次捕获,多次处理(一个try可以对应多个catch)
2.finally有return语句,永远会返回finally中的结果,避免该情况
例子:
输出:100
3.子父类异常:
例子:
自定义异常:
代码:
自定义异常类的练习: