Java的异常处理机制
异常 异常指的是,程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。 由图可知,异常的根类是throwable.其下有两个子类 Error :严重错误Error,无法通过处理的错误,只能事先避免。 Exception :由于使用不当导致,是可以避免的,异常产生后程序员可以通过代码的方式去纠正,使程序继续运行。 而我们平常所说的异常就是指Exception,而它分为;也分为两类: • 编译时期异常:在编译时期就会检查,如果没有处理异常,则编译失败。(如日期格式化类异常) • 运行时期异常:在运行期间,去检查异常,在编译时期,运行异常不会编译器检测(不报错,如数学异常) (一)异常产生过程的解析 下面的代码是一个简单的数组索引越界案例(运行时期异常,编译器不会提示错误) public static int getElement(int []arr,int index){ int ele = arr[index]; return ele; } 已知传来的数组使{1,2,3},索引是3,这是时候JVM就会检测程序出现异常 JVM会做两件事: 1.JVM会根据异常产生的原因创建一个异常的对象,这个异常的对象包含了异常产生的( 内容 , 原因 , 位置 )。 会 new ArrayIndexOutBoundsException("3") ; 2