java笔记 java中异常的总结

----------- android培训java培训、java学习型技术博客、期待与您交流! ------------

异常:通过面向对象的方式将对问题的描述信息进行封装,封装成对异常类。

异常体系:

               Throwable

                         |--Error         (错误)

                         |--Exception   (异常)

                              |--RuntimeException(运行时异常)

体系特点:所有Throwable的子类都具有可抛性

抛出关键字:

throw和throws

throw在函数体中跑出异常

throws在函数上抛出异常类,可以多抛,中间用逗号隔开(即在函数上声明)

除了RuntimeException及其子类异常可以在函数内抛出,不进行try处理的情况下也可以不在函数上声明

其他的在函数内抛出不进行try处理的话,就必须在函数上声明,否则就会编译报错

如果一个函数声明了异常,函数的调用者需要进行处理,可以throws或try(这是处理异常的方式)

异常分两种:

    编译时被检测异常(不按照异常规则办事)

        该异常编译时未处理的话,编译时就会失败

        如果该异常被标示,代表可以被处理

    运行时异常(编译时不检测)

        如果发生该异常,建议不处理,让程序停止执行,需要修正代码

常见异常处理格式:

1.

try

{    }

catch

{    }

注:此处可以有多个catch,父类的catch放到最下面  若捕获到的异常处理不了可以继续抛出,即catch的大括号中还可throw 异常对象

2.

try

{    }

catch

{    }

finaly

{    }

3.

try

{    }

finaly

{    }

除非finally之前有System.exit(0);  finally之后的大括号内的内容总是被执行

 

自定义异常:就是继承Exception或RuntimeException,成为其子类即可,具体继承那个要看异常的类型,调用者不能处理的继承RuntimeException。

 

重写(覆盖)中的异常:

记住一点即可,子类中不能出现“新型”的异常,这样父类的引用指向子类的对象时会出现问题,

所以子类方法中抛出的异常必须是父类异常的子类或其本身,

若父类中抛出多个异常,子类抛出的异常只能是父类的 子集!

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值