标签:java name 错误 text type nodes 异常 id block
异常体系图示
Thorwable是整个错误和异常的父类
程序无法处理的 由JVM产生或抛出的叫做错误Error
异常Exception 包括 运行时异常和非运行时异常
运行时异常(非受检)
是程序未检测出来的异常,这种错误一般是由我们的逻辑错误所引起的
逻辑错误造成的异常仅运行期间才能被检测
ArithmeticException:算数异常
NullPorinterException:空指针异常
lndexOutOfBoundsException:数组越界
......
非运行时异常(受检)
从语法角度上必须解决的异常,如果不处理 那么不能被编译通过
非运行时异常与语法相关
ClassNotFoundException:类未找到异常
IOException:输入输出异常
SQLException:sql编译异常
......
异常解决方法(解决异常、抛出异常)
解决异常
抛出异常
非运行异常只能自己手写 try catch
try:尝试执行,如果执行失败那么就会执行catch当中的代码
try-catch:如果我们try代码快当中的代码执行失败,不会影响后边操作
catch中写什么?
----> 写我们当前所要抛出异常的类型,如果不知道代码抛出什么异常,直接写Exception
finally:try-catch代码块当中一定要执行的代码,一般用来做资源关闭
public static void main(String[] args) {
try {
int a=10/0;
}catch (Exception e){
e.fillInStackTrace();
}finally {
}
}
public static void main(String[] args) throws ClassNotFoundException {
run();
}
/**
* throws:向外抛出异常,让调用者去解决这个异常
* 调用者可以选择try-catch-finally去解决,或者直接抛出
* @throws ClassNotFoundException
*/
public static void run() throws ClassNotFoundException {
Class.forName("trees.Test");
}
自定义异常throw
自定义异常一定要抛出异常
标签:java,
name,
错误,
text,
type,
nodes,
异常,
id,
block
From: https://www.cnblogs.com/nliu/p/17599064.html