目录
一、Java异常概念
异常:程序在运行时出现的,可以使用异常处理机制处理的不正常情况
广义上的异常:程序中出现的任何不正常的错误
可分为两类:error(错误):一旦程序运行时出现错误,程序是无法解决的
exception(狭义异常):程序在运行时出现不正常的情况,但可以通过异常机制来解决
狭义上的异常:指的是程序在运行时出现的不正常情况,可以使用异常处理机制来处理
public class ErrorDemo1 {
public static void main(String[] args) {
/*ErrorDemo1 errorDemo1 = new ErrorDemo1();
errorDemo1.sum(10);*/
/*一般的运行时异常,是可以处理的,虚拟机默认的处理方式是停止运行,出现的异常会说明发生异常的类型,异常的原因,以及异常的位置*/
/*NullPointerException空指针异常*/
/*String s = null;
System.out.println(s.length());*/
/*ArrayIndexOutOfBoundsException:数组下标越界异常,表示数组所以大于或等于数组长度*/
int [] a = new int[5];
a[5]=8;
/*数学运算异常:ArithmeticException*/
/*int g = 10;
int h = 0;
System.out.println(g/h);*/
/*类型转换异常:ClassCastException*/
/*Object s = "abc";
Integer i1 = (Integer)s;
System.out.println(i1);*/
}
/*错误的案例:递归调用,过多,栈内存不够用,会出现这个错误,StackOverflowError,表示内存不够用,程序无法运行,是我们无法解决的*/
/*public int sum(int num){
return num+sum(num-1);*/
// }
}
二、异常的体系
异常的分类:编译时异常:在编译期间必须处理,在写代码时,就会强制提示进行处理&#