异常的各种情况
异常
1.异常:程序运行时所发生的意外情况叫做异常
2.异常的根类Throwable
由以下子类组成
Error:错误。程序员无法解决,例如内存溢出
Exception:异常。程序员必须解决
异常处理:
try{
//可能发生异常的地方
}catch(异常类型 对象){
//捕获异常
}catch(异常类型 对象){
//捕获异常
} .....
finally{
// 异常出口 不管有没有异常finally肯定会执行,碰到retrun也会执行
}
//多个catch时,上一个catch的范围小于下面catch的范围
常见的异常类型:
ClassCastException:类的转化异常
ArithemticException:算术异常
NullpositionException:空指针异常
ArrayIndexOutException:下标越界
NumberFormatException:格式转化异常
手动产生异常
关键字:throw new 异常对象
throw与throws的区别
throws 跟在方法名后面,抛出异常类型,是一种异常处理的方式
throw 后面跟的是异常对象,必须进行处理(RuntimeException 除外)
finally与final的区别
1.finally 用于异常资源的释放,表示异常的出口
2.final 表示最终的,可以修饰属性,类,方法
修饰属性:表示常量不能被修改(必须被赋值)
修饰方法:表示该方法不能被重写(继承)
修饰类:该类不能被继承(String不能被继承)
调用异常中的方法
String getMessage(); //返回错误信息
String toString(); //返回错误信息,显示该异常
void prinStackTrace();//打印错误信息,以及该异常的类型,及发生异常的行号