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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 朱朱生 中级黑马   /  2015-8-30 22:25  /  449 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

异常(理解)
        (1)异常:就是程序出现的不正常情况。
        (2)异常体系:
                Throwable
                        |--Error 严重的问题,是处理不了的。要改正代码的。
                        |--Exception
RuntimeException的,是需要处理的。编译期异常。
                                |--RuntimeException 不需要处理的,是需要改代码的。运行期异常。
                举例:
                        Error:
                                地震,海啸。
                        Exception:
                                感冒了,头疼。
                注意:
                        每种体系的子类都是以父亲的名称作为后缀。
                        XxxError
                        XxxException
        (3)java虚拟机的默认处理方式
                把异常的类名,原因,位置等信息显示在控制台。
                一旦有异常发生,其后的代码不能继续执行。
        (4)异常的解决方案:
                A:自己处理
                        基本格式:
                                try{
                                        可能发生异常的代码;
                                }catch(异常类名 变量名){
                                        异常的处理代码;
                                }finally{
                                        释放资源的代码;
                                }
                        注意:一旦有一次发生,就会立马执行catch里面的代码。
                        变形格式:
                                try...catch
                                try...catch...catch
                                try...catch...catch...finally
                                try...finally
                       
                        JDK7针对多个catch进行了优化:
                                catch(异常1 | 异常2 | 异常3 ... 变量){}
                                注意:这些异常必须是平级关系。
                                      和try...catch...catch的不同点是
                                      JDK7的这种方案是必须平级关系,不能有子父关系。
                                      而try...catch...catch父亲放最后是可以的。
                B:抛出处理
                        用throws关键字在方法上声明(抛出)
                C:到底使用谁?
                        a:能自己处理的尽量自己处理。(建议用try...catch)
                        b:实在不行,你先抛了在说。

0 个回复

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