1、异常

    异常生活中不正常

    在程序中异常指的是代码出现错误的现象

2、异常的分类:

     编译时异常:代码语法的错误(加以修正就可以解决)

     运行时异常:在编译时是不报错的,而在运行的时候就报错了。(空指针异常,除数不能为0异常,负数开方,下标越界……)

3、异常带来的一些布朗后果

    a、代码报错

    b、程序中断,导致后面的代码无法执行

    c、给硬件带来伤害。      c=a/b

4、如何去处理这些异常,而让程序能够继续执行下去呢?

    try{

         //try就像一个摄像头,用来监控有可能出现的异常的代码

     }catch{

        //catch就像保安室,来对异常的现象来进行捕获

     }finally{

        //无论代码是否发生异常,都会执行的语句块

        //一般用于释放资源,关闭连接

     }

5、try{}    catch  finally   的组合

     try{}    catch(){}

     try{}    finally{}

     try{}    catch(){}   catch(){}  catch(){}

【注意:写多重catch的时候,大的异常写在后面,小异常写在前面】

6、捕获异常的3中方式

(1)、通过打印语句提示用户

(2)、System.out.println(e3.getMessage());

(3)、e.printStackTrace();

既可以打印出异常信息,而且还可以打印错误位置(错误的堆栈信息)

7、自定义异常

API  帮助文档  application  interface

new Exception("");    只是创建了一个异常对象

throw  抛出异常,通知程序报错

class  AgeException  extends Exception{

      public AgeException(){

            super("年龄输入有误");

      }

}

8、异常的延迟解决

     throw  AgeException  抛出异常给上一级调用者

     throw 和 throws  的区别: throw抛出异常,通知程序报错,放在创建异常对象的前面

                                          throws抛出异常给调用者处理,一般放在方括号的后面

static void main (String[] args) throws  Exception

将异常抛出给虚拟机的异常处理机制。这种写法在项目中是不允许的,而在自己的小例子中,为了语法上的方便可以少量使用。

posted on 2013-01-17 11:59  Tiny339  阅读(132)  评论(0编辑  收藏  举报