异常处理

异常定义:

        程序在运行时出现不正常情况。

        问题也是现实生活中的一个具体事物,可以通过java类的形式进行描述。并封装成对象。Java对不正常情况进行描述后的对象体现。

        问题划分:严重/非严重。

        严重的:java通过Error类描述。

                Error一般不编写针对性的代码进行处理。

        非严重的:java通过Exception类进行描述。

                对于Exception可以使用针对性的处理方式进行处理。

         常见的异常:数组下标越界、空指针......

         常见的错误:内存溢出OutofmemoryError

        ErrorException都有一些共性内容,抽取出来成为Throwable类。

         Throwable

                |--Error

                |--Exception

                        |--RuntimeException

自定义异常:

        必须是自定义类继承Exception,或者Throwable,或者Error

        原因:异常体系特点:异常类和异常对象都需要被抛出。这个可抛性是Throwable这个体系独有特点。

throwthrows的区别:

        throws使用在函数上,throw使用在函数内。

        throws后面跟的异常类。可以跟多个,用逗号隔开。

        throw后边跟的是异常对象

对多异常的处理:

        1、声明异常时,越具体越好。

        2、多个catch块儿,父类的catch放到最下面。

Exception中特殊的子类异常运行时异常:

        如果在函数内抛出该异常,函数上可以不用声明,编译可以通过。

        如果在函数上声明了该异常。调用者可以不用进行处理,编译可以通过。

        之所以不用在函数声明,是因为不需要让调用者处理。

        当该异常发生,希望程序停止。因为在运行时,出现了无法继续运算的情况,希望停止程序后,对代码进行修正。

        如果该异常的发生,无法再继续进行运算,就让自定义异常继承RuntimeException

异常分两种:

        1、编译时被检测的异常。

        2、编译时不被检测的异常(运行时异常。RuntimeException及其子类)

        编译时被检测的异常是可处理的,需要声明出来,被调用者处理。调用者用try catch去处理。

        编译时不被检测的异常可只声明或只在内部抛出。

        throwreturn都是函数结束标识。它们后边的代码都不能执行。

Finally:

        finally代码块:定义一定执行的代码。通常用于关闭资源,比如数据库连接。

异常的好处:

        1、将问题进行封装。

        2、将正常流程代码和问题处理代码相分离,方便于阅读。

总结:

        异常处理,多多实践。




评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值