学习java的第15天之 异常

异常产生的原因

因为硬件缺失,程序不够严谨,必须的内容缺失导致的程序问题称为异常 类似与人生病

异常的分类

Throwable Error: 证明硬件出现问题,不处理

常见的错误:

        OutOfMemoryError:内存溢出异常,可以通过程序优化解决.现在的计算机一般很少见到此异常

        Exception: 因为程序语法错误或思考不足导致的

        检查时异常:CheckedException 处理方法:修改代码,正确书写语法格式

         运行时异常:RuntimeException 处理方法:通过判断等类似方案处理

常见的运行异常

NullPointerException:空指针异常

ArrayIndexOutOfBoundsException:

数组下标越界异常

ClassCastException:类型转换异常

ArithmeticException:算数异常

了解异常

诞生原因:

        1,调用的方法声明了异常

         2,因为程序思考不足导致的

        3异常的传递: 在A方法中调用B方法,在B方法调用C方法...X方法 如果x方法出现异常会导致向上传递

JVM对异常的处理方案: 让程序闪退 所以不要将异常留给JVM解决

处理异常

核心目的:保证程序不要闪退,可以正常运行

        方案: 1,捕获异常处理异常

                语法:try{ 有可能出现异常的代码 }catch(异常种类1 变量名){ 异常种类1的处理方案 }catch(异常种类2 变量名){ 异常种类2的处理方案 } ... catch(异常种类n 变量名){ 异常种类n的处理方案 }finally{ 必须要执行的代码 }

                         catch:必须有一个

                         finally:可有可无

                        catch:多个异常,先子后父

        2,声明异常

                关键字:throws

                使用位置: 方法上,形参之后,方法体之前

                注意:可以一次声明多个异常

        3,抛出异常

                关键字:throw

                使用位置: 方法中

                语法: throw 异常类对象;

                建议:使用throw时,必须配合throws

自定义异常

步骤: 1,创建一个类 2,继承与异常类 3,定义无参构造,定义有参构造

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值