A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 邱俊杰 中级黑马   /  2012-4-17 00:32  /  1719 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.看完毕老师的异常总结一下。大家就当复习看看吧。

异常体系的特点:异常体系中的所有类以及建立的对象都具备可抛性。
                                也就是说可以被throw和throws关键字所操作。
                                只有异常体系具备这个特点。
--------------
throw和throws的用法:

throw定义在函数内,用于抛出异常对象。
throws定义在函数上,用于抛出异常类,可以抛出多个用逗号隔开。

当函数内容有throw抛出异常对象,并未进行try处理。必须要在函数上声明,不然编译失败。
注意,RuntimeException除外。也就说,函数内如果抛出的RuntimeExcpetion异常,函数上可以不用声明。

如果函数声明了异常,调用者需要进行处理。处理方法可以throws可以try。

异常有两种:
        编译时被检测异常
                该异常在编译时,如果没有处理(没有抛也没有try),编译失败。
                该异常被标识,代表这可以被处理。
        运行时异常(编译时不检测)
                在编译时,不需要处理,编译器不检查。
                该异常的发生,建议不处理,让程序停止。需要对代码进行修正。

异常处理语句:try{需要被检测的代码}catch{处理异常的代码;}finally{一定会执行的代码;}
又三个格式:try{]catch{}   
                     try{}finlly{}和try{}catch{}finally{}  
注意,try不可没有。
           1,finally中定义的通常是 关闭资源代码。因为资源必须释放。           2,finally只有一种情况不会执行。当执行到System.exit(0);fianlly不会执行。

自定义异常:
        定义类继承Exception或者RuntimeException
        1,为了让该自定义类具备可抛性。
        2,让该类具备操作异常的共性方法。

        当要定义自定义异常的信息时,可以使用父类已经定义好的功能。
        异常异常信息传递给父类的构造函数。
        class MyException extends Exception
        {
                MyException(String message)
                {
                        super(message);
                }
        }


2,调用到抛出异常的功能时,抛出几个,就处理几个。
                一个try对应多个catch。

3,多个catch,父类的catch放到最下面。




评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马