异常和异常处理

1、错误(Error是程序无法解决的错误,大多数错误与编写者编写的代码无关,是代码运行时JVM出现的问题,如虚拟机运行错误。

 

2、异常(Exception):异常是指程序可以解决的问题,异常类中有一个重要的子类RunTimeException(运行时异常)类,RunTimeException异常由JVM抛出。

常见异常结构图

 3、Throwable类是所有异常的根类,Throwable中常用的方法有

(1)public void getMessage();----返回异常发生的原因

(2)public void printStackTrace(); ----在控制台上打印Throwable对象封装的异常信息,包括异常类型、异常原因、异常位置。

(3)public void toString();----返回异常的类型和异常的描述信息

 

4、异常处理——try...catch...finally

(1)try块:用于捕获异常,后面可接多个catch块,如果不接catch块,则必须跟一个finally块。

(2)catch块:用于处理try块捕获的异常。

        注:在编写多重catch块时,需要注意顺序先小后大(先子类后父类),因为当程序出现异常时,系统会就近寻找匹配的异                   常处理,子类继承于父类,父类的异常处理也适用于子类。

(3)finally块:无论是否捕获和处理异常,finally块都会被执行,如果在try..catch过程中遇到return语句,则会在方法返回之前执行finally块。在编写程序时,尽量添加finally块,用于释放占用资源。

(4)finally块不会执行的情况:finally语句发生异常,在前面代码使用System.exit()退出程序,程序所在线程挂掉,关闭cpu。

 

5、异常处理——异常抛出throw、throws

(1)throw是自己处理异常的另一个方式,抛出一个异常对象,throw执行了就一定抛出了异常。用于方法内

(2)throws是用于声明所有可能发生的异常的方法,对肯能发生的异常不做处理,抛出给方法的调用者处理

(3)如果在方法内通过throw抛出了编译时异常,而没有捕获处理,则方法必须用throws声明。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值