java异常的概述和分类
- A:异常的概述
- 异常就是Java程序在运行过程中出现的错误。
- B:异常的分类
- 通过API查看Throwable
- Error
- 服务器宕机,数据库崩溃等
- Exception
C:异常的继承体系 - Throwable
- Error
- Exception
- RuntimeException
java中JVM默认是如何处理异常的
- A:JVM默认是如何处理异常的
- main函数收到这个问题时,有两种处理方式:
- a:自己将该问题处理,然后继续运行
- b:自己没有针对的处理方式,只有交给调用main的jvm来处理
- jvm有一个默认的异常处理机制,就将该异常进行处理.
- 并将该异常的名称,异常的信息.异常出现的位置打印在了控制台上,同时将程序
java中异常的处理方式
- A:异常处理的两种方式
- a:try…catch…finally
- try catch
- try catch finally
- try finally
- b:throws
- a:try…catch…finally
- B:try…catch处理异常的基本格式
- try…catch…finally
案例演示
public class Demo2_Exception {
/**
* * A:异常处理的两种方式
* a:try…catch…finally
* try catch
* try catch finally
* try finally
* b:throws
* B:try...catch处理异常的基本格式
* try…catch…finally
* C:案例演示
* try...catch的方式处理1个异常
try:用来检测异常的
catch:用来捕获异常的
finally:释放资源
世界上最真情的相依就是你在try我在catch,无论你发神马脾气,我都静静接受,默默处理
当通过trycatch将问题处理了,程序会继续执行
*/
public static void main(String[] args) {
// TODO 自动生成的方法存根
int a=10;
int b=0;
String[] arr = {"ds","cxs","sca","csd"};
try {
System.out.println(a/b); //除0异常
System.out.println(arr[10]); //索引越界异常
arr=null;
System.out.println(arr[0]);
}
catch (ArithmeticException e) { //Exception e = new ArithmeticException();
System.out.println("除数不能为0!");
}catch (ArrayIndexOutOfBoundsException e) {
System.out.println("数组中索引越界了!");
}
catch (Exception e) { //Exception e = new NullPointerException();
System.err.println("代码有错误!");
}finally {
System.out.println("不论是否发生异常,该语句都会执行。");
}
}
}