Exception和Error的区别?

本文详细介绍了Java中的异常处理机制,包括Exception与Error的区别、常见异常类型及如何自定义异常。探讨了IOException与RuntimeException的不同,以及NoClassDefFoundError与ClassNotFoundException之间的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Exception是在项目运行中我们可以预测的系统错误和bug,我们可以对Exception进行跑出和捕获,对Exception进行处理;

2.Error是项目运行中不可预测的系统问题,我们可以对Error进行捕获,但是如果没有好的处理办法的话建议不要对Error进行捕获和处理,这样上线项目在运行中问题并无法处理;

3.Exception和Error都继承于Throwable类型,java中只有继承Throwable类型才能被声明(thows)和捕获(catch);

4.掌握Exception

            第一:掌握常见的Exception类型,主要分成两类IOException和RuntimeException,RuntimeException中有如NullException,ClassNotFoundException这些具体异常类型;

                  第二:掌握自定义异常,在业务项目中我们需要定义一些自定义异常对业务逻辑的具体问题的捕获;

5.掌握Error,Error也有一些子类NoClassDefFoundError等,我们可以对这些Error进行捕获和声明抛出,但是不建议操作,因为在业务流程中这些不在考虑中的Error我们并没有好的办法进行处理;

6.NoClassDefFoundError和ClassNotFoundException的区别:NotClassDefFoundError是当操作该类时,calss-path中没有该类的信息,而ClassNotFoundExcption是在系统运行时通过名称在Runtime中动态加载中,该类不存在。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值