异常
异常的概念:
异常是一种导致程序中断的指令流,如果不对异常进行正确的处理,则可能导致程序的中断指向,造成不必要的损失
异常的分类:
Throwable是所有异常的父类
Error:
严重问题,这个问题发生后,一般不针对编写的代码进行处理,通常都是有Jvm抛出的问题。
Exception:
RuntimeException:
运行时异常,该类及其子类都是,这种异常不处理,是可以编译通过的,但是运行时就会出错。
除了RuntimeException:
这类异常被称为编译时异常,这类异常必须要处理,不处理就运行不了。
异常的结构:
这是异常常见的一种结构写法:
try{
可能出现异常的代码:
}catch(异常名称){
处理方案:
}finally{
关闭资源
}
代码案例:
public class ExceptionTest {
public static void main(String[] args) {
int a =10;
int b =0;
// System.out.println(a/b);//分母不能为0,运行时异常,算数异常ArithmeticException。
// System.out.println("end");
try {
System.out.println(a/b);
}catch (RuntimeException e){
System.out.println("除数不能为0");
}finally {
System.out.println("end");
}
}
}
注意事项:
try:
里面代码越少越好,因为被try包裹着代码执行时要走异常处理机制,需要Jvm给该机制分配额外资源。
catch:
里面至少有一行代码
多个异常处理:
代码案例:
public class ExceptionTest {
public static void main(String[] args) {
int a =10;
int b =0;
int c[]={
1