黑马程序员_java异常处理

时间:2022-10-05 00:45:12
------- android培训 java培训 、期待与您交流! ----------

异常也称例外,是在程序运行中发生的,会打断程序执行的事

件,常见的异常有算术异常,空指针异常,找不到文件异常。

为了加强程序的健壮性,必须对可能发生的异常事件作出处理

。简单的异常范例:
public class TestException{
public static void main(String[] args){
int arr[]=new int[5];
arr[10]=7;
System.out.println("end of main() method");
}
}
这个程序会抛出数组下标越界的异常,阻止程序的执行。
关于处理异常:
try{
要检查的程序语句:
。。。。。。。
}
catch(异常类 对象名称){
异常发生时的处理语句;
}finally{
一定会运行到的程序代码;
}
它的执行步骤:
1.try程序块若有异常发生,程序的运行就中断,并抛出异常类

所产生的对象。
2.抛出的对象如果属于catch()括号里的异常类,catch就会

捕捉异常,然后进入到catch块里运行。
3.无论try程序块是否捕捉到异常,或者捕捉的异常是否与

catch()括号里异常相同,最后一定会运行到finally里的程

序代码

关于以上代码可用以下代码替换arr【10】=7;语句
try{
int arr[10]=7;
}catch(ArrayIndexOutOfBoundsException e){
System.out.println("数组超出绑定范围");
}finally{
System.out.println("这里的代码一定会执行");
}

异常类继承框架
Throwable
   |
-----------
|         |
Error    Exception
           |------------------------------
         IOException      |               |
                      RuntimeException   ..........
                           |
        ----------------------------------------
            |                   |
   ArithmeticException  IndexOutOfBoundsException
                                |   |
                       ...............
在程序中抛出异常:
throw 异常类;
例如:
public class TestException{
public static void main(String[] args){
int a=4; b=0;
try{
if(b=0)
throw new ArithmeticException("一个算术异常");
else
System.out.println(a+"/"+b+"="+a/b);
}catch(ArithmeticException e){
  System.out.println("抛出异常为"+e);
}
}
}
指定方法抛出异常类
方法名称 (参数....)throws 异常类1,异常类2...
自定义异常类
class 异常名称 extends Exception
{
.......
}

------- android培训 java培训 、期待与您交流! ----------