异常Exception

1.Throwable类

Error 错误

Exception 编译时异常(编译时出现的问题,要求必须显示处理)

RuntimeException 运行时异常(运行时出现的问题,可以不处理,由JVM处理)

 

Throwable的3个异常处理方法:

String getMessage() 返回此 throwable 的简短描述。获取的就是异常信息(原因)

String toString() 返回此 throwable 的详细消息字符串。获取的是异常类名和异常信息(原因)

void printStackTrace() JVM打印异常对象,默认此方法,打印的异常信息是最全面的

获取的是异常类名和异常信息(原因),异常的位置

2.异常处理方法

1)throw

抛出指定的异常对象

注意:

a.throw必须放在方法内部

b.throw抛出的对象必须是Exception或者是Exception子类

throw和throws的区别:

throw:动作

必须定义在方法内部;只能抛出一个异常

throws:声明

必须写在方法的声明出;可以声明多个异常

2)try....catch....finally

try{

//可能会出现异常的代码

}catch(异常的类型 变量名){

//处理异常的代码

}finally{

//无论是否会出现异常都会执行的代码,一般用来释放资源

}

注:如果finally中没有return语句,则先保存try或者catch中return的值,等finally中语句执行完后,返回之前保存的值;如果finally中有return语句,则返回finally中return的值。(一般我们不在finally中写return语句)

3.自定义异常

自定义异常类://要见明知意

java提供的异常类,不够我们使用,需要自己定义一些异常类

要一个编译时期异常 继承 Exception ,一定要处理(throws , try..catch)

还是一个运行时期异常 继承 RuntimeException(可以处理也可以不用处理)

格式:

public class XXXExcepiton extends Exception | RuntimeException{

添加一个空参数的构造方法//根据父类的构造方法生成的

添加一个带异常信息的构造方法//根据父类的构造方法生成的

}

注意:

1.自定义异常类一般都是以Exception结尾,说明该类是一个异常类

2.自定义异常类,必须的继承Exception或者RuntimeException

继承Exception:那么自定义的异常类就是一个编译期异常,如果方法内部抛出了编译期异常,就必须处理这个异常,要么throws,要么try...catch

继承RuntimeException:那么自定义的异常类就是一个运行期异常,无需处理,交给虚拟机处理(中断处理)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值