异常处理try.....catch

没有异常的程序是没有的。

异常不等于错误,错误往往是硬件或运行环境问题。

异常分为编译时异常(CheckedException)和运行时异常(RuntimeEx.)


异常是被一个方法抛出的对象,当一个方法抛出异常时,该方法从调用栈中被弹出,同时产生的异常对象抛给了栈中的前一个方法。

对于异常处理,方法有三种选择:1、捕获这个异常,不让他沿着调用栈继续向下抛出;

     2、捕获这个异常,并继续向下抛出;

      3、不捕获这个异常,从而导致方法从调用栈中被弹出,异常对象继续抛给调用栈下面的方法。


try{     }catch{     }捕获异常;可以接多个catch块。

如果捕获的异常无继承关系,顺序可以交换;如果有继承关系,子类异常应在父类前面。

printStactTrace( )方法打印异常堆栈信息。

如果一块代码不管是否发生异常抛出,都要被执行,用关键字 finally。

try,catch,finally都不允许单独存在,catch\finally前面必须有try。


方法声明中抛出异常用关键字throws;只有在抛出编译时异常时,调用者才会受到警告,抛出运行时异常,调用者不会在编译期被警告。

throw   用在方法体中,执行语句。后跟异常对象,发生异常抛出动作;

throws 用于方法声明。后跟异常类名,表明方法有可能抛出某种或某几种类型的异常,仅在编译期提示调用者。


自定义异常类 继承 Exception:

1.创建一个类继承于 Exception

2.添加构造方法和普通方法

3.在一个方法中抛出异常

4.在另一个方法中捕获并处理异常

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值