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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 丶唯萌Pro 中级黑马   /  2017-10-26 21:39  /  960 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

异常的概述和体系结构:
        我们在写代码的时候,经常出现一些小问题,
        那么为了方便我们处理这些问题,java为我们提供了异常机制

        异常:不正常,我们在代码的时候出的的编译或者运行时的错误。
        异常包含了错误的类型,原因以及位置
异常的体系结构:
        Throwable(最顶层)
                Error
                        出现的不能够处理的严重问题
                Exception
                        可以处理的问题
异常的处理方式
        捕获处理
                try{
                    有可能出现问题的代码;
                }catch(异常对象 e){
                    处理异常;
                }
        抛出
                当我们不想处理异常,或者没有能力处理的时候,我们可以选择抛出异常谁调用方法谁处理异常
                使用关键字throws在方法的声明处抛出异常。
        jvm处理异常的方式:
                如果出现异常没有处理,jvm会帮我们处理,他会吧异常
                的类型,元还有位置显示在命令行,并且还终止了
                程序,异常后面的代码将不再执行
        try...catch的执行顺序:
                首先执行try语句
                        如果发现异常,异常下面不再执行,直接跳到catch语句中
                        catch语句结束后,整个try...catch结束
                        如果没有发现异常,try语句执行结束后,try...catch直接结束,不再执行catch里语句体
如何处理多个异常:
        可以使用多个try...catch语句
        使用一个try和多个catch
        多个catch之间的顺序:
                多个catch之间可以有子父类
                平级之间没有顺序关系
                如果有子父类,父类必须放在最后面
Throwable的常用方法:
        String getMessage():错误信息|原因
        String toString():类型和原因
        void printStackTrace():类型,原因和位置
try...catch和抛出的区别:
        try...catch:后的语句可以运行
        抛出是直接结束
finally:组合try...catch使用,用于释放资源等收尾工作,无论try...catch语句如何执行,finally的代码一定会执行。
        try{
            有可能出现问题的代码;
        }catch(异常对象){
            处理异常;
        }finally{
            释放资源;
            清理垃圾;
            (做一些收尾的动作)
        }
异常的分类:
        运行时期异常:
                RuntimeException的子类就是运行时期异常,在编译时期可以自由选择处理或者不处理。
                在 Java 虚拟机正常运行期间抛出的异常的超类
        编译时期异常;
                在编译时期必须处理,是Exception的子类,非RuntimeException的子类。
递归的概述:
        求5的阶乘。
                5! = 5*4*3*2*1;
        把大问题拆成很多小问题,然在再把小问题拆成更多小问题
                当我们吧更多的小问题解决了,小问题也解决了
                随着小问题的解决,大问题也随之解决了
        在方法本身不断调用方法自己
       
        递归注意事项:
                递归一定要有出口,内存溢出
                递归多次不宜过多,内存溢出


Landlords.zip

1.1 KB, 阅读权限: 1, 下载次数: 44

递归案例代码

1 个回复

倒序浏览
飘过``````````
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马